の内側にのみ私はinteresetedてるブロブの輪郭の中にROIを指定するための簡単な解決策はありますか?OpenCVのC++/OBJの-C:goodFeaturesToTrack特定のブロブ
私のアイデア、これまで:boundingRectを使用して
- が、それは私が分析するようにしたくない、あまりにも多くのものが含まれています。
- 出力によって画像全体にgoodFeaturesToTrackを適用して、ループ事前に一度私のブロブ輪郭の外側
感謝を排除するために調整!私は私が必要なものを見つけ
EDIT
:
:CV :: pointPolygonTest()ここではいくつかのコードは右のもののようですが、私はそれを実装するかどうかはわかりません...
// ...
IplImage forground_ipl = result;
IplImage *labelImg = cvCreateImage(forground.size(), IPL_DEPTH_LABEL, 1);
CvBlobs blobs;
bool found = cvb::cvLabel(&forground_ipl, labelImg, blobs);
IplImage *imgOut = cvCreateImage(cvGetSize(&forground_ipl), IPL_DEPTH_8U, 3);
if (found) {
vb::CvBlob *greaterBlob = blobs[cvb::cvGreaterBlob(blobs)];
cvb::cvRenderBlob(labelImg, greaterBlob, &forground_ipl, imgOut);
CvContourPolygon *polygon = cvConvertChainCodesToPolygon(&greaterBlob->contour);
}
"ポリゴンは、" 私は必要な輪郭が含まれています。
goodFeaturesToTrackがこのように実装されています
- (std::vector<cv::Point2f>)pointsFromGoodFeaturesToTrack:(cv::Mat &)_image
{
std::vector<cv::Point2f> corners;
cv::goodFeaturesToTrack(_image,corners, 100, 0.01, 10);
return corners;
}
私はコーナーをループする必要があると品種との各点をご確認くださいので、次の:: pointPolygonTest()、右?
あなたが望むものの簡単な例を描くことができますか? – mevatron
@mevatron私は今、私は私が興味カートンの角を取得するには、入力画像上goodFeaturesToTrackを発射、あなたの助けとcvBlobでカートン(他のスレッド)の輪郭を得ました。次のステップは、取得のみにコーナーをフィルタリングしています一度カートンの輪郭の内側にある。私は何をしたいのかと思っています。 – dom