0
我一直在使用OpenCV C/C++,目前我正在嘗試Android。我正在檢測臉部特徵。我使用OpenCV示例進行人臉檢測,並通過級聯檢測功能。我想問您的是:OpenCV4Android - 在矩形中捕獲圖像(面部檢測)
1)如何在reactangle可變/設備內存捕捉區域:
在OpenCV的它的工作就像是:
cvSetImageROI(img1, cvRect(10, 15, 150, 250));
IplImage *img2 = cvCreateImage(cvGetSize(img1),
img1->depth,
img1->nChannels);
cvCopy(img1, img2, NULL);
在Android中的例子,我有數組與發現面的矩形:
Rect[] facesArray = faces.toArray();
for (int i = 0; i < facesArray.length; i++)
Core.rectangle(mRgba, facesArray[i].tl(), facesArray[i].br(), FACE_RECT_COLOR, 3);
但我不知道如何保存它,因爲我無法在IplImage上工作。你能指導我一些嗎?或者給我一些我可以學習的來源?
2)如果有任何的方式來設置的onClick,在其上發現了攝像機視圖的區域,這樣我就可以點擊choosen臉,它寫某種變量或將其保存在內存中
呀它可以幫助很多,它允許我將矩形區域寫入變量。如果你還可以告訴我顯示它的方式,因爲當我這樣做時:if(facesArray [0]!= null){mChosenFace = mRgba.submat(facesArray [0]);返回mChosenFace; }我的相機視圖凍結。那麼,我有問題,因爲你可以看到,在C++中,我正在使用書,我有參考,現在我不知道寫作和顯示圖像的基本知識。你有什麼資源可以學習嗎? – F1sher
你不能只說:if(facesArray [0]!= null)。如果沒有找到面孔,則不存在facesArray [0],這已經是非法指令了。你必須首先檢查facesArray.length – berak