現在地 >> メニュー >> OpenCV >> sequence編03
INDEX:sequence編02<< sequence編03 >> sequence編04?

輪郭線

輪郭線は「cvFindContours関数」で検出し、「cvDrawContours関数」で描画することができる。
詳しくはリファレンス参照。

【例】
//画像を読み込んで前処理をする
IplImage *imgA = cvLoadImage("logocheck2.png");
if(imgA == NULL)
{
	std::cerr << "Can't Load Image\n";
	return -1;
}

IplImage *gray = cvCreateImage(cvGetSize(imgA),IPL_DEPTH_8U,1);
cvCvtColor(imgA,gray,CV_BGR2GRAY);
cvCanny(gray,gray,10,20);

CvMemStorage *storage = cvCreateMemStorage (0); //メモリストレージ
CvSeq *contours = 0; //シーケンス

int x = cvFindContours (gray, storage, &contours);
cvDrawContours (imgA, contours, CV_RGB (255, 0, 0), CV_RGB (0, 255, 0),1,1);
std::cout <<"輪郭が"<< x << "個見つかりました\n";

サンプルコード

目次

― その他 ―

Wiki内検索

計測中...(07.10.8〜)

Save The World






▲よろしければ広告のクリックもお願いします


▲ランキングに参加しました

管理人/副管理人のみ編集できます