1. 程式人生 > >QT下OpenCV學習(高斯模糊處理)

QT下OpenCV學習(高斯模糊處理)

根據在EasyPR中學習到的,車牌識別第一部分的車牌定位首先需要對車牌圖片進行高斯模糊處理

OpenCV中高斯模糊宣告為GaussianBlur(src,dst,Size(m_GaussianBlurSize,m_GaussianBlurSize),0,0,BORDER_DEFAULT)

其中src為輸入圖片,dst為輸出圖片;m_GaussianBlurSize為模糊半徑,模糊半徑越大輸出圖片就越模糊;後面3個引數都可以預設,只寫0也可以。

由前一篇筆記繼續處理圖片,修改mainwindow.cpp,這裡在.ui檔案內增加了一個button按鈕,點選按鈕顯示模糊後的圖片。

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/core.hpp>
#include <opencv/cv.h>

using namespace cv;

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
  
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pushButton_clicked()
{
    Mat image = imread("/home/sy/result.jpg");
    Mat dst;
    GaussianBlur(image,dst,Size(5,5),0,0,BORDER_DEFAULT);//由EasyPR中學到模糊半徑設定為5時效果最佳
    imshow("GaussianBlur", dst);

}