C++ opencv2模糊图像

C++ opencv2模糊图像,c++,image-processing,opencv,C++,Image Processing,Opencv,我试图模糊一幅图像,高斯模糊一幅图像,但当我运行我的代码时,结果是图像打开而不模糊。有人能帮我解决这个问题吗 #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> int main() { //read the image cv::Mat image= cv::imread("Space_N

我试图模糊一幅图像,高斯模糊一幅图像,但当我运行我的代码时,结果是图像打开而不模糊。有人能帮我解决这个问题吗

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>

 int main() {
//read the image
cv::Mat image= cv::imread("Space_Nebula.jpg");
cv::Mat result;
// create image window
cv::namedWindow("My Image");
//display image
cv::imshow("My Image", image);
//wait key
cv::waitKey(50000);

//blur image
cv::blur(image,result,cv::Size(5,5));
cv::imshow("My Image", image);

//smooth image
cv::GaussianBlur(image,result,cv::Size(5,5),1.5);
cv::imshow("My Image", image);

return 1;

}
#包括
#包括
#包括
int main(){
//阅读图片
cv::Mat image=cv::imread(“Space_Nebula.jpg”);
cv::Mat结果;
//创建图像窗口
简历:namedWindow(“我的形象”);
//显示图像
简历::imshow(“我的图像”,图像);
//等待键
cv::waitKey(50000);
//模糊图像
cv::模糊(图像、结果、cv::大小(5,5));
简历::imshow(“我的图像”,图像);
//平滑图像
cv::高斯模糊(图像,结果,cv::大小(5,5),1.5);
简历::imshow(“我的图像”,图像);
返回1;
}

Do
cv::imshow(“我的图像”,结果)而不是
cv::imshow(“我的图像”,图像)

一些事情:您正在将
图像
处理到名为
结果
的垫子中,然后显示
图像
。另外,在最后两次调用
imshow
之后,没有调用waitKey,因此您根本看不到这些调用。还有一个小点:从
main
返回0,信号完成,没有错误。请尝试以下方法:

//read the image
cv::Mat image= cv::imread("../../IMG_0080.JPG");
cv::Mat result;
// create image window
cv::namedWindow("My Image");
//display image
cv::imshow("My Image", image);
//wait key
cv::waitKey(0);

//blur image
cv::blur(image,result,cv::Size(5,5));
cv::imshow("My Image", result);
cv::waitKey(0);

//smooth image
cv::GaussianBlur(image,result,cv::Size(5,5),1.5);
cv::imshow("My Image", result);
cv::waitKey(0);

return 0;