#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/opencv.hpp"
#include "opencv2/core/core.hpp"
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
cv::Mat srcImage = cv::imread("C:\\Users\\LP\\Desktop\\C++\\ConsoleApplication4\\ConsoleApplication4\\1.jpg");
if (srcImage.empty())
{
return -1;
}
//转化为灰度图
cv::Mat srcGray;
cv::cvtColor(srcImage, srcGray, CV_BGR2GRAY);
//转换为二值图像
cv::Mat srcBinary;
cv::threshold(srcGray, srcBinary, 160, 255, cv::THRESH_BINARY);
//距离变换
cv::Mat dstImage;
cv::distanceTransform(srcBinary, dstImage, CV_DIST_L2, CV_DIST_MASK_PRECISE);
//归一化矩阵
cv::normalize(dstImage, dstImage, 0, 1., cv::NORM_MINMAX);
cv::imshow("srcBinary", srcBinary);
cv::imshow("dstImage", dstImage);
cv::waitKey(0);
return 0;
}
opencv计算图像距离变换
最新推荐文章于 2024-04-03 15:45:08 发布