文章目錄
- C++課程設計:基于C++Qt的數字影像處理系統
- 摘要
- 效果展示
- 1.影像的選取
- 2.影像的保存
- 3.影像縮放與拖動
- 4.影像處理演算法
- 4.1. 影像模糊
- 4.2. 邊緣濾波
- 4.3. 對比度調整
- 4.4. 白平衡 / 直方圖均衡化
- 4.5. 影像銳化
- 4.6. 影像灰度化
- Github鏈接自取
C++課程設計:基于C++Qt的數字影像處理系統
摘要
本次 C++課程設計基于 C++ Qt 及 OpenCV 開源計算機視覺庫實作了一項功能完備,界面簡潔美觀的數字影像處理系統,對于用戶而言,系統包括的主要功能如下:
-
影像存取機制:基于 Qt
QFileDialog類的檔案存取機制,允許用戶從檔案夾中選取待處理影像,或將處理影像另存為,以此同時也可選擇是否退出系統; -
影像管理機制:基于 C++
STL容器實作處理步驟的撤銷,以及回滾功能,利用 stack 構建 imgManager 類實作處理影像的統一管理,允許用戶對處理影像執行“撤銷”,“前進”,“一鍵復原為初始狀態”等操作; -
影像處理演算法:基于 C++ 開源計算機視覺演算法庫
OpenCV實作若干經典的數字影像處理演算法,演算法在動態庫中實作,將相似影像增強演算法封裝成類,統一繼承一個處理演算法基類,系統的數字影像處理演算法包括“影像模糊”,“邊緣提取”, “對比度調節”,“白平衡”,“影像美化”,“影像灰度化”等六大類; -
界面布局管理:基于 C++ Qt 的
QLabel,QPushButtonQMenu等控制元件實作用戶與 UI 的互動,通過 QteventFilter事件過濾器,paintEvent繪圖事件,SIGNAL加槽函式機制等實作 UI 與演算法的耦合,主視窗繼承QMainWindow,子視窗統一繼承自定義的 childWindow,在主界面中,用戶可以對影像進行拖拽,縮放等操作,直觀的查看原始影像與處理后影像的對比效果;以此同時,左側欄能夠實時顯示原始影像與當前處理影像的直方圖,方便用戶進行比對;子界面包括影像模糊濾波以及對比度調節,其中的滑動條允許用戶實時的調節濾波核大小或影像增強演算法的一些引數,微調引數導致相應的影像變化能夠實時顯示在界面中,方便用戶對引數進行直觀的調整,
效果展示
1.影像的選取

2.影像的保存

3.影像縮放與拖動

4.影像處理演算法
4.1. 影像模糊

4.2. 邊緣濾波

4.3. 對比度調整

4.4. 白平衡 / 直方圖均衡化

4.5. 影像銳化

4.6. 影像灰度化

由于前進和撤銷功能無法通過靜態影像進行展示,將以最終答辯演示效果為準,
Github鏈接自取
專案代碼已上傳Github:https://github.com/Scienthusiasts/Digital_images_processing_system,需要自取,若對您有幫助,別忘了點個?star😆 若有任何疑問請私信或在評論區留言,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/413654.html
標籤:其他
上一篇:深度學習-------過擬合和欠擬合,梯度消失和梯度爆炸,優化器
下一篇:MOCO: Momentum Contrast for Unsupervised Visual Representation Learning
