作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我如何知道 cornerHarris 计算的角点数?我写的函数如下:
...
Mat gray;
cvtColor( img, gray, CV_BGR2GRAY );
int thresh = 160;
Mat dst, dst_norm, dst_norm_scaled;
dst = Mat::zeros( img.size(), CV_32FC1 );
// Detector parameters
int blockSize = 2;
int apertureSize = 3;
double k = 0.04;
// Detecting corners
cornerHarris( gray, dst, blockSize, apertureSize, k, BORDER_DEFAULT );
// Normalizing
normalize( dst, dst_norm, 0, 255, NORM_MINMAX, CV_32FC1, Mat() );
convertScaleAbs( dst_norm, dst_norm_scaled );
最佳答案
cornerHarris
不计算特定数量的角球。它会创建一个新图像 dst
,其大小与原始图像 gray
相同。您定义一个阈值,从上面的这个值您可以找到角落。如果您将阈值定义得更小,您将拥有更多角点。
在您的情况下,您可以找到 thresh
的预定义值的角落,如下所示:
for( int j = 0; j < dst_norm.rows ; j++ ){
for( int i = 0; i < dst_norm.cols; i++ ){
if( (int) dst_norm.at<float>(j,i) > thresh ){
/* Whatever your would like to do with that corner */
}
}
}
查看此 Harris Corner Detector Tutorial和 cornerHarris OpenCV documentation获取更多信息。
关于c++ - 使用 cornerHarris 知道角的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37464916/
我如何知道 cornerHarris 计算的角点数?我写的函数如下: ... Mat gray; cvtColor( img, gray, CV_BGR2GRAY );
我只想试试 openCV 函数 -- cvCornerHarris。这是我的 C++ 代码: //image file char imagePath[256] = "./images/lena
我在玩弄 cornerHarris OpenCV 中的函数。我无法理解 ksize 和 k 在函数中的含义。文档中提到 ksize 是 所用 Sobel 导数的孔径参数 和 k 是 方程中的 Harr
我是一名优秀的程序员,十分优秀!