diff --git a/IRImageProcessing/Source.cpp b/IRImageProcessing/Source.cpp index 200564a..9bc8f29 100644 --- a/IRImageProcessing/Source.cpp +++ b/IRImageProcessing/Source.cpp @@ -203,10 +203,10 @@ { int division = 16; - int ksize = 101; + int ksize = 51; double sigma = 18; double theta; - double lambda = 36; + double lambda = 42; double gamma = 1; double psi = 0; double angle = 0; @@ -225,16 +225,16 @@ cv::Mat kern = cv::getGaborKernel(cv::Size(ksize, ksize), sigma, theta, lambda, gamma, psi, CV_64F); kern /= cv::sum(kern)[0]; - cv::Mat gaborImage, gabor8UImage, gaborOtsuBinaryImage; + cv::Mat gaborImage, gabor8UImage, gaborBinaryImage; cv::filter2D(src, gaborImage, CV_64F, kern); //�摜�̌^�ϊ��Ɛ��K�� double minVal, maxVal; cv::minMaxLoc(gaborImage, &minVal, &maxVal); // gaborImage�̍ŏ��l�ƍő�l���擾 gaborImage.convertTo(gabor8UImage, CV_8U, 255.0 / (maxVal - minVal), -minVal * 255.0 / (maxVal - minVal)); - cv::threshold(gabor8UImage, gaborOtsuBinaryImage, 0 - - , 255, cv::THRESH_BINARY | cv::THRESH_OTSU); + //cv::threshold(gabor8UImage, gaborBinaryImage, 128 , 255, cv::THRESH_BINARY); + + cv::adaptiveThreshold(gabor8UImage, gaborBinaryImage, 255, cv::ADAPTIVE_THRESH_MEAN_C, cv::THRESH_BINARY, 101, 10); // �J�[�l���̒l��0����255�͈̔͂ɐ��K�� double kernMinVal, kernMaxVal; @@ -255,7 +255,7 @@ // �摜�̕ۑ� cv::imwrite(dirName + "/Gabor_" + fileStr + ".png", gabor8UImage); cv::imwrite(dirName + "/diff_" + fileStr + ".png", diffImage); - cv::imwrite(dirName + "/GaborOtsuBinaryImage_" + fileStr + ".png", gaborOtsuBinaryImage); + cv::imwrite(dirName + "/GaborOtsuBinaryImage_" + fileStr + ".png", gaborBinaryImage); // �J�[�l�����摜�t�@�C���Ƃ��ĕۑ� cv::imwrite(dirName + "/Kernel_" + fileStr + ".png", kern8U); @@ -282,7 +282,7 @@ // �o�͏��� std::string baseDir = "output/"; - std::string dirBaseName = "sigma16_lambda32_"; + std::string dirBaseName = "sigma18_lambda42_"; std::string dirName = baseDir + dirBaseName;