Quantcast
Channel: OpenCV Q&A Forum - Latest question feed
Viewing all articles
Browse latest Browse all 19555

Opencv with visual C++2010

$
0
0
#include #include int main(void){ char img_name1[]=""; char img_name2[]=""; printf("画像1をドロップしてください\n"); scanf("%s", img_name1); printf("画像2をドロップしてください\n"); scanf("%s", img_name2); // 画像の読み込み int x2 = 0; cv::Mat srcImg = cv::imread(img_name1); printf("gray_img"); cv::Mat gray_img; printf("グレースケール"); // グレースケールに変換する cvtColor(srcImg, gray_img, CV_RGB2GRAY); printf("Mat gray_img_B"); cv::Mat gray_img_B; // グレースケールに変換する cvtColor(srcImg, gray_img_B, CV_RGB2GRAY); cv::Mat srcImg2 = cv::imread(img_name2); cv::Mat gray_img2; // グレースケールに変換する cvtColor(srcImg2, gray_img2, CV_RGB2GRAY); int count = gray_img_B.rows*gray_img_B.cols; int color[20000]; int color2[20000]; int color_S[20000]; int hist_G[20000]; //ヒストグラム int hist_G_S[20000]; //ヒストグラム int hist_G2[20000]; //ヒストグラム int hist_G2_S[20000]; //ヒストグラム int x, y; //******************************************* //* 濃淡変換 * //******************************************* x2 = 0; for (y = 0; y < gray_img.rows; y++) { // ポインタの取得 for (x = 0; x < gray_img.cols; x++) { color_S[x2] = gray_img.at(x, y); //符号計算 if (color_S[x2] >= 0) color_S[x2] = 0 - color_S[x2]; if (color_S[x2]<0) color_S[x2] = 0 + color_S[x2]; gray_img.at(x, y) = color_S[x2]; x2++; } } cv::namedWindow("入力画像", CV_WINDOW_AUTOSIZE | CV_WINDOW_FREERATIO); cv::namedWindow("出力画像", CV_WINDOW_AUTOSIZE | CV_WINDOW_FREERATIO); cv::imshow("入力画像", srcImg); cv::imshow("出力画像", gray_img); cv::waitKey(2000); // 指定したウィンドウを消す cv::destroyWindow("出力画像"); printf("処理中\n"); //************************************************************************************ x2 = 0; //******************************************* //* 値取得 * //******************************************* printf("1\n"); for (y = 0; y < gray_img_B.rows; y++) { // ポインタの取得 for (x = 0; x < gray_img_B.cols; x++) { color[x2] = gray_img_B.at(x, y); x2 = x2 + 1; } } y = 0; //初期化 for (x = 0; xcount) flag = false; } y++; } y = 0; for (x = 0; x0){ hist_G_S[y] = hist_G[x]; y++; } } //************************************************************************************ flag = true; //************************************************************************************ x2 = 0; //******************************************* //* 値取得 * //******************************************* printf("2\n"); for (y = 0; y < gray_img_B.rows; y++) { // ポインタの取得 for (x = 0; x < gray_img_B.cols; x++) { color2[x2] = gray_img2.at(x, y); x2 = x2 + 1; } } y = 0; //初期化 for (x = 0; xcount) flag = false; } y++; } y = 0; for (x = 0; x0){ hist_G2_S[y] = hist_G2[x]; y++; } } //************************************************************************************ int sum_count[20000]; int sum_count_C = 0; int num = 0; float sum_count_C2; for (x = 0; x

Viewing all articles
Browse latest Browse all 19555

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>