2013-02-12 85 views
-1

我試着用計算梯度HOGDescriptor地圖。 我的代碼:HOGDescriptor :: computeGradient使用OpenCV的

HOGDescriptor hog; 
hog.compute(faceROI,ders,Size(32,32),Size(0,0),locs); 
Mat grad; 
Mat sec; 
hog.computeGradient(frame_gray, grad, angleofs); 

imshow("1", frame_gray); 
imshow("2", grad); //here program fails: Unhandled exception at memory location 
imshow("3", angleofs); //grad.data = "". Why?? 

我無法找到使用HOGDescriptor :: computeGradient的GOOT例子。

請幫忙!

回答

7

爲了形象化的OpenCV的HOGDescriptor ::計算(..),使用this,這是驚人的。

+1

+1這是相當整潔! – 2013-02-13 10:55:37

+0

謝謝! – 2013-09-26 17:38:17

0

imshow(「2」,grad);因爲imshow預計grad圖像是1,3或4通道圖像,而它是2通道圖像。

首先信道包含在x方向上的梯度,而第二信道包含在y中的梯度。你應該在兩個圖像分割渠道想象他們:

Mat grad_channel[2]; 
split(grad, grad_channel); 
imshow("grad_x", grad_channel[0]); 
imshow("grad_y", grad_channel[1]); 

最佳