最終更新: mikk_ni3_92 2007年11月07日(水) 12:59:06履歴
現在地 >> メニュー >> サンプルコード::OpenCV >> 適応的な閾値処理
以下の画像をグレイスケールで読み込んで、cvAdaptiveThreshold()を用いて、ピクセル毎異なるに閾値処理を行え。
画像
その他条件:
使用するアルゴリズムは「CV_ADAPTIVE_THRESH_MEAN_C」
「隣接領域サイズ」は11
「閾値算出用パラメータ」は8
#include <cv.h>
#include <highgui.h>
#include <iostream>
using namespace std;
int main( int argc, char **argv)
{
IplImage *imgA = cvLoadImage( "test2.jpg", CV_LOAD_IMAGE_GRAYSCALE);
if(imgA ==NULL)
{
cout<<"Can't Load Image ." << endl;
std::exit(0);
}
cvAdaptiveThreshold (imgA, imgA, 255, CV_ADAPTIVE_THRESH_MEAN_C, CV_THRESH_BINARY,11,8);
cvNamedWindow("window",CV_WINDOW_AUTOSIZE);
cvShowImage("window",imgA);
cvWaitKey(0);
cvReleaseImage( &imgA );
cvDestroyWindow("window");
return 0;
}
以下の画像をグレイスケールで読み込んで、cvAdaptiveThreshold()を用いて、ピクセル毎異なるに閾値処理を行え。
画像
その他条件:
使用するアルゴリズムは「CV_ADAPTIVE_THRESH_MEAN_C」
「隣接領域サイズ」は11
「閾値算出用パラメータ」は8
#include <cv.h>
#include <highgui.h>
#include <iostream>
using namespace std;
int main( int argc, char **argv)
{
IplImage *imgA = cvLoadImage( "test2.jpg", CV_LOAD_IMAGE_GRAYSCALE);
if(imgA ==NULL)
{
cout<<"Can't Load Image ." << endl;
std::exit(0);
}
cvAdaptiveThreshold (imgA, imgA, 255, CV_ADAPTIVE_THRESH_MEAN_C, CV_THRESH_BINARY,11,8);
cvNamedWindow("window",CV_WINDOW_AUTOSIZE);
cvShowImage("window",imgA);
cvWaitKey(0);
cvReleaseImage( &imgA );
cvDestroyWindow("window");
return 0;
}