數字圖像處理(6):設計數字圖像處理GUI界面(C語言,未用opencv)


設計一個集成各種圖像處理算法的軟件(前幾次作業已經實現的算法、功能)

一、平臺

使用平臺:VS2015+MFC
語言:C語言

VS: Microsoft Visual Studio(簡稱VS)是美國微軟公司的開發工具包系列產品。VS是一個基本完整的開發工具集,它包括了整個軟件生命週期中所需要的大部分工具,如UML工具、代碼管控工具、集成開發環境(IDE)等等。所寫的目標代碼適用於微軟支持的所有平臺,包括Microsoft
Windows、Windows Mobile、Windows
CE、.NET Framework、.NET Compact
Framework和Microsoft Silverlight 及Windows Phone。

MFC: 微軟基礎類庫(英語:Microsoft Foundation Classes,簡稱MFC)是微軟公司提供的一個類庫(class libraries),以C++類的形式封裝了Windows API,並且包含一個應用程序框架,以減少應用程序開發人員的工作量。其中包含大量Windows句柄封裝類和很多Windows的內建控件和組件的封裝類。

界面如下:
在這裏插入圖片描述
在這裏插入圖片描述

二、實現功能

1、打開圖片文件

在這裏插入圖片描述

點擊“打開”按鈕,即可選擇圖片文件進行打開並在左側窗口顯示出來。

目前只支持.bmp格式的圖片。

2、圖像取反

在這裏插入圖片描述

點擊“圖像取反”按鈕,可對原圖進行取反操作。

3、直方圖均衡化

在這裏插入圖片描述
(注:這一步的操作是有問題的,彩色直方圖均衡化不應該對RGB三通道分別操作,關於這一問題以後會說到,這裏就不多說了)

4、冪次變換

在這裏插入圖片描述

輸入v*10的值,點擊冪次變換按鈕實現冪次變換。

三、遇到問題

在這裏插入圖片描述

MFC讀取的是bmp格式文件,最開始調試時想看一下讀取的數據對不對,就把數據輸出看了一下,結果如上,左是原圖,右是輸出的圖。可以看到不僅左右上下翻轉了,圖像顏色也變了。

關於翻轉,是因爲bmp格式讀取圖像順序的原因,這個老師講過。

關於顏色也變化就於點好奇,,,上網查了一下,原來bmp格式不是RGB格式而是BGR這個順序。

不過還挺好看的:)

反思:

這周的作業,前段時間一直在糾結用MFC還是QT,最後先學會了MFC便用了MFC。寫的代碼架構不太好,有點亂。

附代碼:

代碼有點長,還是之後有時間上傳到github吧,到時候會在這裏更新地址

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章