日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

(3两个例子)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练

發布時間:2025/3/20 c/c++ 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (3两个例子)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

從零開始的嵌入式圖像圖像處理(PI+QT+OpenCV)實戰演練

1綜述
http://www.cnblogs.com/jsxyhelu/p/7907241.html
2環境架設
http://www.cnblogs.com/jsxyhelu/p/7908226.html
3兩個例子
http://www.cnblogs.com/jsxyhelu/p/8000804.html
4程序框架
http://www.cnblogs.com/jsxyhelu/p/7953805.html
5編譯使用最新opencv
http://www.cnblogs.com/jsxyhelu/p/8000819.html
6綜合實驗
http://www.cnblogs.com/jsxyhelu/p/8000829.html
7拾遺
http://www.cnblogs.com/jsxyhelu/p/8007117.html

一、第一個例子 ? ??其實在目前這種情況下,配置OpenCV+QT的環境還是非常直接,簡單的。 ? ??最為重要的是編寫正確的.pro文件,再原有基礎上添加以下內容: INCLUDEPATH += /usr/include/opencv \
??????????????? /usr/include/opencv2
LIBS += /usr/lib/gnueabihf/libopencv_highgui.so \
??????? /usr/lib/gnueabihf/libopencv_core.so??? \
??????? /usr/lib/gnueabihf/libopencv_imgproc.so ? ? ? ?指向正確的include和lib文件。實現以下結果,讀取顯示lena.jpg #include "mainwindow.h"
#include "ui_mainwindow.h"
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <QFileDialog>
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()
{
? //第3個參數表示查找文件時從哪個目錄開始,如果為"."的話,表示從該工程目錄開始查找,最后那個參數的過濾器的名字之間
? //要用空格,否則識別不出來
? QString img_name = QFileDialog::getOpenFileName( this, tr("Open Image"), ".",tr("Image Files(*.png *.jpg *.jpeg *.bmp)"));
? //toAscii()返回8位描述的string,為QByteArray,data()表示返回QByteArray的指針,QByteArray為字節指針
? //現在已改為toLatinl函數
? Mat src = imread( img_name.toLatin1().data());
? cvtColor( src, src, CV_BGR2RGB );
? QImage img = QImage( (const unsigned char*)(src.data), src.cols, src.rows, QImage::Format_RGB888 );
? ui->label->setPixmap( QPixmap::fromImage(img) );
? img_name.clear();
} ?主要代碼已經非常類似windows下的編寫方式,唯一不同的就是添加了QImage和mat之間的轉換。 二、第二個例子 ? ??圖像處理必須和攝像頭打交道,具體的配置請看下一節。但是現在,如果直接使用USB攝像頭,也應該能夠進行操作: 頭文件: #ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
//新添加
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <QFileDialog>
#include <QImage>
#include <QTimer>???? // 設置采集數據的間隔時間
using namespace cv;
//helper函數
QPixmap Mat2QImage(Mat src);
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
??? Q_OBJECT
public:
??? explicit MainWindow(QWidget *parent = 0);
??? ~MainWindow();
private slots:
??? void on_pushButton_clicked();
??? void on_pushButton_2_clicked();
??? void on_pushButton_3_clicked();
??? void readFarme();?????? // 讀取當前幀信息
??? void on_pushButton_4_clicked();
private:
??? Ui::MainWindow *ui;
??? QTimer??? *timer;
??? QImage??? *imag;
??? VideoCapture *videocapture;?? // 視頻獲取結構, 用來作為視頻獲取函數的一個參數
??? Mat????????? matFrame;??????? //申請IplImage類型指針,就是申請內存空間來存放每一幀圖像
??? bool????? bMethod;//是否使用算法
};
#endif // MAINWINDOW_H ? ?程序文件,注意我做了進一步集成: #include "mainwindow.h"
#include "ui_mainwindow.h"
using namespace cv;
//全局變量
Mat src;
Mat gray;
Mat tmp;
Mat dst;
MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{
??? ui->setupUi(this);
??? timer?? = new QTimer(this);
??? imag??? = new QImage();???????? // 初始化
??? connect(timer, SIGNAL(timeout()), this, SLOT(readFarme()));? // 時間到,讀取當前攝像頭信息
??? bMethod = false;//是否使用算法
}
MainWindow::~MainWindow()
{
??? delete ui;
}
//事件驅動
//打開攝像頭
void MainWindow::on_pushButton_clicked()
{
??? //打開攝像頭,從攝像頭中獲取視頻
??? videocapture? = new VideoCapture(0);
??? // 開始計時,超時則發出timeout()信號
??? timer->start(33);
}
//讀取下一Frame圖像
void MainWindow::readFarme()
{
??? // 從攝像頭中抓取并返回每一幀
??? videocapture->read(matFrame);
??? //圖像處理
??? if(bMethod)
??? {
??????? cvtColor(matFrame,tmp,COLOR_BGR2GRAY);
??????? Canny(tmp,dst,30,255);
??? }
??? else
??? {
??????? dst = matFrame.clone();
??? }
??? // 格式轉換
??? QPixmap qpixmap = Mat2QImage(dst);
??? // 將圖片顯示到label上
??? ui->label->setPixmap(qpixmap);
}
//拍照
void MainWindow::on_pushButton_2_clicked()
{
??? // 格式轉換
??? QPixmap qpixmap = Mat2QImage(dst);
??? // 將圖片顯示到label上
??? ui->label_2->setPixmap(qpixmap);
}
//執行算法
void MainWindow::on_pushButton_4_clicked()
{
??? bMethod = !bMethod;
}
//關閉攝像頭
void MainWindow::on_pushButton_3_clicked()
{
??? timer->stop();???????? // 停止讀取數據。
??? videocapture->release();
}
//helper函數//
//格式轉換
QPixmap Mat2QImage(Mat src)
{
??? QImage img;
??? //根據QT的顯示方法進行轉換
??? if(src.channels() == 3)
??? {
??????? cvtColor( src, tmp, CV_BGR2RGB );
??????? img = QImage( (const unsigned char*)(tmp.data), tmp.cols, tmp.rows, QImage::Format_RGB888 );
??? }
??? else
??? {
??????? img = QImage( (const unsigned char*)(src.data), src.cols, src.rows, QImage::Format_Grayscale8 );
??? }
??? QPixmap qimg = QPixmap::fromImage(img) ;
??? return qimg;
} ??



來自為知筆記(Wiz)



總結

以上是生活随笔為你收集整理的(3两个例子)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日日摸日日碰夜夜爽无码 | 国产在线拍 | 69天堂网 | 国产碰碰 | 乱淫67194| 欧美二区在线 | 亚洲狼人天堂 | 久久视频在线 | 大尺度做爰呻吟舌吻情头 | 天天干天天玩 | 无码无套少妇毛多18pxxxx | 色肉色伦交av色肉色伦 | 欧美精品一区二区蜜臀亚洲 | 国产亚洲精品久久久久久青梅 | 开元在线观看视频国语 | 美女诱惑一区二区 | 亚洲aaaa级特黄毛片 | 韩国短剧在线观看 | 日本色区 | 成人av免费在线 | 狼人久久 | 99热一区二区三区 | 少妇久久久久久久久久 | 欧美福利网 | 国产精品日韩电影 | 午夜精品国产精品大乳美女 | 国产精品第157页 | 日日碰狠狠添天天爽 | 亚洲AV无码精品久久一区二区 | 少妇人妻偷人精品视频蜜桃 | 最好看的2019中文大全在线观看 | 茄子av | 精品欧美一区二区三区在线观看 | 中文字幕福利 | 久久免费公开视频 | 超清纯大学生白嫩啪啪 | 中文字幕精品久久 | 色小姐在线视频 | 午夜精品福利视频 | 老鸭窝一区二区 | 香蕉视频传媒 | 久久久久久国产免费a片 | 人妻内射一区二区在线视频 | 精品国产96亚洲一区二区三区 | 男人添女人囗交视频 | 久久国产人妻一区二区免色戒电影 | 国产精品国产a级 | 国产chinasex对白videos麻豆 | 动漫同人高h啪啪爽文 | 国产在线播放一区二区三区 | 欧美人妻日韩精品 | 精品视频在线看 | 欧美双性人妖o0 | 国产精品美女久久久网av | 久久精品电影网 | 美女性生活视频 | 中文精品在线 | 自拍偷拍日韩精品 | 久久国产露脸精品国产 | 欧美性生活免费视频 | 成人mv在线观看 | 都市激情男人天堂 | 天堂欧美城网站 | 亚洲性图一区二区 | 国产美女性生活 | 69一区二区 | 成人免费观看视频网站 | 在线视频精品一区 | 黄色三级网络 | 日本不卡专区 | a视频在线观看免费 | 性感美女视频一二三 | 丁香久久 | 亚洲精品一区久久久久久 | 欧美 丝袜 自拍 制服 另类 | 黄色小视频免费观看 | www色com| 欧美日韩亚洲国产综合 | 久久综合久 | 黄色在线免费 | 超碰97人人干 | 久久久久九九 | 亚洲av毛片| 亚洲一级av毛片 | 精品亚洲一区二区三区四区五区 | 丰满白嫩尤物一区二区 | 国产xxxx做受视频 | 日韩一区二区三区视频在线观看 | 日韩av无码一区二区三区 | 自拍偷拍色图 | 国产成人av一区二区三区在线观看 | 91网址入口 | 中文字幕亚洲视频 | 日本熟妇人妻xxxxx | 夜夜夜夜爽 | 成人三级在线播放 | 99久精品视频 | 精品国产自 | 免费a v视频|