gpt4 book ai didi

opencv - 直方图匹配

转载 作者:太空宇宙 更新时间:2023-11-03 22:54:40 25 4
gpt4 key购买 nike

我正在使用 calcBackProject 来查找框架中的对象,它以某种方式很好地扫描了所有框架。但我需要加强它

在我的代码中,有时我有一个运动检测掩码,并基于它生成候选对象的轮廓(移动的对象可能是目标)

我可以利用它来计算每个轮廓的直方图并将其与目标的直方图匹配吗?

  • 如何计算每个轮廓的直方图?calcHist 接受掩码但如何将轮廓作为掩码传递
    -如何搭配?

最佳答案

将轮廓转换为蒙版并在 calcHist 中使用蒙版。
在 C++ 中,它会像这样完成:

/**
* Converts a contour to a binary mask.
* The parameter mask should be a matrix of type CV_8UC1 with proper
* size to hold the mask.
* @param contour The contour to convert.
* @param mask The Mat where the mask will be written. Must have proper size
* and type before callign convertContourToMask.
*/
void convertContourToMask( const std::vector<cv::Point>& contour, cv::Mat& mask )
{
std::vector<std::vector<cv::Point>> contoursVector;
contoursVector.push_back( contour );
cv::Scalar white = cv::Scalar(255);
cv::Scalar black = cv::Scalar(0);
mask.setTo(black);
cv::drawContours(mask, contoursVector, -1, white, CV_FILLED);
}

关于opencv - 直方图匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33092921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com