1、首先建立qt gui程式專案(不細說了)
2、修改pro配置檔案,增加opencv支援
3、利用qt creater 建立乙個如下布局,其中顯示為乙個label控制項
4、qt中中文亂碼解決方法
網上有不少關於qt中文亂碼解決的方法,我找到了乙個比較好的辦法,main函式新增如下函式即可:
#include int main(int argc, char *argv)
5、如圖,可以看到程式實現了顯示一張,翻轉一張的功能
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include #include #include #include #include #include #include #include #include #include mainwindow::mainwindow(qwidget *parent) :
qmainwindow(parent),
ui(new ui::mainwindow)
mainwindow::~mainwindow()
void mainwindow::on_open_clicked()
void mainwindow::on_imgshow_clicked()
//讀取該檔案
cv::mat image = cv::imread(strfilename.toascii().data());
if(!image.data)
//轉換的格式,在qt下利用opencv讀取的資料如果要生成一張qimage型別需要轉換格式
cv::cvtcolor(image,image,cv_rgb2bgr);
//除了在label顯示,同時利用opencv自身的gui彈出一視窗,可以看到如果不轉換opencv gui顯示正常
cv::namedwindow("");
cv::imshow("", image);
qimage img= qimage((const unsigned char*)(image.data),
image.cols,image.rows,qimage::format_rgb888);
// img = img.scaled(ui->qimgshow->size());
// 根據label設定大小,並顯示
ui->qimgshow->setpixmap(qpixmap::fromimage(img).scaled(ui->qimgshow->size()));
// resize the label to fit the image
// ui->qimgshow->resize(ui->qimgshow->pixmap().size());
}void mainwindow::on_filpimg_clicked()
cv::mat image = cv::imread(strfilename.toascii().data());
if(!image.data)
cv::mat result;
//根據單選按鈕翻轉
int ifliptype;
if(ui->radioh->ischecked())
else if(ui->radiov->ischecked())else
//翻轉,彈出opencv 的gui 顯示
cv::flip(image,result,ifliptype);
cv::namedwindow("");
cv::imshow("", result);
}
使用 Scala 寫WordContext程式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 packagemydemo importorg.apache.spark.objectmywordcontextdemo 執行程式 首先將程式打包成 jar 包 執行以...
利用anaconda安裝OpenCV
然後一步步安裝,簡單入門教程 利用anaconda安裝opencv 開啟anaconda prompt 在此終端中進行換源,切換到清華的映象源 conda config add channels conda config add channels conda config set show chan...
濾波(opencv自寫函式)
濾波就是把影象中的干擾給去除掉,常用的濾波方法有線性濾波,均值濾波,拉普拉斯銳化等方法。並且每一種方法都有不同的濾波模板。一 均值濾波 用模板掃瞄影象中的畫素點,把掃瞄的點求平均值,用這個平均值代替掃瞄中點。void medianfiltering iplimage img,iplimage dst...