高斯模糊、膨胀、腐蚀
cv::GaussianBlur(src, blur, cv::Size(7, 7), 0);
cv::dilate(src, dilate, cv::getStructuringElement(cv::MORPH_RECT, cv::Size(5, 5)));
cv::erode(src, erode, cv::getStructuringElement(cv::MORPH_RECT, cv::Size(5, 5)));
完整示例:
#include <iostream>
#include <opencv2/opencv.hpp>
int main(int argc, char **argv)
{
if (argc != 2)
{
return 1;
}
cv::Mat image = cv::imread(argv[1]);
if (image.empty())
{
std::cout << "无法读取图片" << std::endl;
return 1;
}
std::cout << "图片高度: " << image.rows << "宽度: " << image.cols << std::endl;
cv::Mat blur;
cv::Mat dilate;
cv::Mat erode;
cv::GaussianBlur(image, blur, cv::Size(7, 7), 0);
cv::dilate(image, dilate, cv::getStructuringElement(cv::MORPH_RECT, cv::Size(5, 5)));
cv::erode(image, erode, cv::getStructuringElement(cv::MORPH_RECT, cv::Size(5, 5)));
cv::imshow("opencv demo1", image);
cv::imshow("opencv demo2", blur);
cv::imshow("opencv demo3", dilate);
cv::imshow("opencv demo4", erode);
cv::waitKey(0);
return 0;
}