現在地 >> メニュー >> OpenCV >> IplImage編02 >> IplImage編02::間接アクセス >> IplImage編02::まとめ5
関連:IplImage編02::まとめ6IplImage編02::まとめ7IplImage編02::まとめ8IplImage編02::まとめ9


問題

グレイスケール画像のIplImageを作成し、(100,50)の画素値を120、他を255にし、
「cvPtr2D関数」を使って、(100,49)、(100,50)、(100,51)の画素値を出力せよ。

答え

#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
#include <cstdio>

int main( int argc, char **argv)
{
	
	IplImage *imgA = cvCreateImage(cvSize(400,400),IPL_DEPTH_8U,1);

	//背景をまっ白にする
	cvSet (imgA, cvScalarAll(255));
	cvSetReal2D(imgA,50,100,120);//(100,50)の画素値を120にする


	//(100,50)のピクセルの周囲の画素値を確認
	unsigned char *tmp1;
	tmp1 = cvPtr2D(imgA,49,99);//(99,49)
	printf("(99,49) = %d\n",*tmp1);

	tmp1 = cvPtr2D(imgA,50,100);//(100,50)
	printf("(100,50) = %d\n",*tmp1);

	tmp1 = cvPtr2D(imgA,51,101);//(101,51)
	printf("(101,51) = %d\n",*tmp1);

	cvNamedWindow("cvPtr2D",CV_WINDOW_AUTOSIZE);	
	cvShowImage("cvPtr2D",imgA);

	cvWaitKey(0); // 0秒待つ => ずっと入力待ち
	cvReleaseImage(& imgA);  //メモリ解放
	
	cvDestroyWindow("cvPtr2D");  //ウィンドウの破棄

	return 0;
}

目次

― その他 ―

Wiki内検索

計測中...(07.10.8〜)

Save The World






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


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

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