openCV smooth平滑处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013420428/article/details/82755971


#include "opencv2/core.hpp"
#include "opencv2/highgui.hpp"
#include "opencv2/imgproc.hpp"
#include "opencv2/videoio.hpp"
#include <iostream>

using namespace std;
using namespace cv;

void show_smooth(IplImage* image)
{
    cvNamedWindow("wind-in", CV_WINDOW_AUTOSIZE);
    cvNamedWindow("wind-out", CV_WINDOW_AUTOSIZE);

    cvShowImage("wind-in", image);

    IplImage* out = cvCreateImage(cvGetSize(image), IPL_DEPTH_8U, 3); 

    cvSmooth(image, out, CV_GAUSSIAN, 3, 3); // 3x3区域 高斯平滑处理
    cvShowImage("wind-out", out);

    cvReleaseImage( &out );

    cvWaitKey(0);
    cvDestroyWindow("wind-in");
    cvDestroyWindow("wind-out");

}


int main(int argc, char **argv)
{   
    IplImage* img = cvLoadImage(argv[1]);
    show_smooth(img);

    cvReleaseImage( &img );
    return 0;
}
cmake_minimum_required(VERSION 2.8)

project(smooth)

find_package(OpenCV REQUIRED)

add_executable(smooth main.cpp)

target_link_libraries(smooth ${OpenCV_LIBS})

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u013420428/article/details/82755971