資源簡介
第1章 緒論
1.1 數字圖像處理概述
1.2 C#概述
1.2.1 C#特點
1.2.2 WinForm編程
1.2.3 GDI+
1.3 補充說明
第2章 C#數字圖像處理的3種方法
2.1 C#圖像處理基礎
2.1.1 Bitmap類
2.1.2 BitmapData類
2.1.3 Graphics類
2.2 彩色圖像灰度化
2.3 彩色圖像灰度化編程實例
2.3.1 使用圖像
2.3.2 圖像處理的3種方法
2.4 小結
第3章 點運算及直方圖
3.1 灰度直方圖
3.1.1 灰度直方圖定義
3.1.2 灰度直方圖編程實例
3.2 線性點運算
3.2.1 線性點運算定義
3.2.2 線性點運算編程實例
3.3 全等級直方圖灰度拉伸
3.3.1 灰度拉伸定義
3.3.2 灰度拉伸編程實例
3.4 直方圖均衡化
3.4.1 直方圖均衡化定義
3.4.2 直方圖均衡化編程實例
3.5 直方圖匹配
3.5.1 直方圖匹配定義
3.5.2 直方圖匹配編程實例
3.6 小結
第4章 幾何運算
4.1 圖像平移
4.1.1 圖像平移定義
4.1.2 圖像平移編程實例
4.2 圖像鏡像
4.2.1 圖像鏡像變換定義
4.2.2 圖像鏡像編程實現
4.3 圖像縮放
4.3.1 圖像縮放定義
4.3.2 灰度插值法
4.3.3 圖像縮放編程實例
4.4 圖像旋轉
4.4.1 圖像旋轉定義
4.4.2 圖像旋轉編程實現
4.5 小結
第5章 數學形態學圖像處理
5.1 圖像腐蝕運算
5.1.1 圖像腐蝕運算定義
5.1.2 圖像腐蝕運算編程實例
5.2 圖像膨脹運算
5.2.1 圖像膨脹運算定義
5.2.2 圖像膨脹運算編程實例
5.3 圖像開運算與閉運算
5.3.1 圖像開運算與閉運算定義
5.3.2 圖像開運算編程實例
5.3.3 圖像閉運算編程實例
5.4 擊中擊不中變換
5.4.1 擊中擊不中變換定義
5.4.2 擊中擊不中變換編程實例
5.5 小結
第6章 頻率變換
6.1 二維離散傅里葉變換
6.2 快速傅里葉變換
6.2.1 快速傅里葉變換概述
6.2.2 快速傅里葉變換編程實例
6.3 幅度圖像和相位圖像
6.4 頻率成分濾波
6.4.1 頻率成分濾波原理
6.4.2 頻率成分濾波編程實例
6.5 頻率方位濾波
6.5.1 頻率方位濾波原理
6.5.2 頻率方位濾波編程實例
6.6 小結
第7章 圖像平滑與去噪
7.1 噪聲模型
7.1.1 噪聲概述
7.1.2 噪聲模型編程實例
7.2 均值濾波與中值濾波
7.2.1 均值濾波與中值濾波原理
7.2.2 均值濾波與中值濾波編程實例
7.3 灰度形態學濾波
7.3.1 灰度形態學原理
7.3.2 灰度形態學去噪原理
7.3.3 灰度形態學去噪編程實現
7.4 小波變換去噪
7.4.1 小波變換概述
7.4.2 小波變換去噪原理
7.4.3 小波變換去噪編程實例
7.5 高斯低通濾波
7.5.1 高斯低通濾波原理
7.5.2 高斯低通濾波編程實例
7.6 統計濾波
7.6.1 統計濾波原理
7.6.2 統計濾波編程實例
7.7 小結
第8章 邊緣檢測
8.1 模板算子法
8.1.1 模板算子法原理
8.1.2 模板算子法編程實例
8.2 高斯算子
8.2.1 高斯算子原理
8.2.2 高斯算子編程實例
8.3 Canny算子
8.3.1 Canny邊緣檢測原理
8.3.2 Canny算子編程實例
8.4 形態學邊緣檢測
8.4.1 形態學邊緣檢測原理
8.4.2 形態學邊緣檢測編程實例
8.5 小波變換邊緣檢測
8.5.1 小波變換邊緣檢測原理
8.5.2 小波變換邊緣檢測編程實例
8.6 金字塔方法
8.6.1 金字塔方法原理
8.6.2 金字塔方法編程實例
8.7 小結
第9章 圖像分割
9.1 Hough變換
9.1.1 Hough變換原理
9.1.2 Hough變換編程實例
9.2 閾值法
9.2.1 自動閾值選擇法原理
9.2.2 閾值分割法編程實例
9.3 特征空間聚類法
9.3.1 K-均值聚類法原理
9.3.2 ISODATA聚類法原理
9.3.3 特征空間聚類法編程實例
9.4 松弛迭代法
9.4.1 松弛迭代法原理
9.4.2 松弛迭代法編程實例
9.5 小結
第10章 圖像壓縮編碼
10.1 哈夫曼編碼
10.1.1 哈夫曼編碼原理
10.1.2 哈夫曼編碼編程實例
10.2 香農編碼
10.2.1 香農編碼原理
10.2.2 香農編碼編程實例
10.3 香農-弗諾編碼
10.3.1 香農-弗諾編碼原理
10.3.2 香農-弗諾編碼編程實例
10.4 行程編碼
10.4.1 行程編碼原理
10.4.2 行程編碼編程實例
10.5 LZW編
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.Text;
namespace?compression
{
????class?Complex
????{
????????private?double?real?=?0.0;
????????private?double?imaginary?=?0.0;
????????public?double?Real
????????{
????????????get
????????????{
????????????????return?real;
????????????}
????????????set
????????????{
????????????????real?=?value;
????????????}
????????}
????????public?double?Imaginary
????????{
????????????get
????????????{
????????????????return?imaginary;
????????????}
????????????set
????????????{
????????????????imaginary?=?value;
????????????}
????????}
????????public?Complex()
????????{
????????}
????????public?Complex(double?dbreal?double?dbimag)
????????{
????????????real?=?dbreal;
????????????imaginary?=?dbimag;
????????}
????????public?Complex(Complex?other)
????????{
????????????real?=?other.real;
????????????imaginary?=?other.imaginary;
????????}
????????public?static?Complex?operator?+(Complex?comp1?Complex?comp2)
????????{
????????????return?comp1.Add(comp2);
????????}
????????public?static?Complex?operator?-(Complex?comp1?Complex?comp2)
????????{
????????????return?comp1.Subtract(comp2);
????????}
????????public?static?Complex?operator?*(Complex?comp1?Complex?comp2)
????????{
????????????return?comp1.Multiply(comp2);
????????}
????????public?Complex?Add(Complex?comp)
????????{
????????????double?x?=?real?+?comp.real;
????????????double?y?=?imaginary?+?comp.imaginary;
????????????return?new?Complex(x?y);
????????}
????????public?Complex?Subtract(Complex?comp)
????????{
????????????double?x?=?real?-?comp.real;
????????????double?y?=?imaginary?-?comp.imaginary;
????????????return?new?Complex(x?y);
????????}
????????public?Complex?Multiply(Complex?comp)
????????{
????????????double?x?=?real?*?comp.real?-?imaginary?*?comp.imaginary;
????????????double?y?=?real?*?comp.imaginary?+?imaginary?*?comp.real;
????????????return?new?Complex(x?y);
????????}
????????public?double?Abs()
????????{
????????????double?x?=?Math.Abs(real);
????????????double?y?=?Math.Abs(imaginary);
????????????if?(real?==?0)
????????????{
????????????????return?y;
????????????}
????????????if?(imaginary?==?0)
????????????{
????????????????return?x;
????????????}
????????????if?(x?>?y)
????????????{
????????????????return?(x?*?Math.Sqrt(1?+?(y?/?x)?*?(y?/?x)));
????????????}
????????????else
????????????{
????????????????return?(y?*?Math.Sqrt(1?+?(x?/?y)?*?(x?/?y)));
????????????}
????????}
????????public?double?Angle()
????????{
????????????if?(real?==?0?&&?imaginary?==?0)
????????????????return?0;
????????????if?(real?==?0)
????????????{
????????????????if?(imaginary?>?0)
????????????????????return?Math.PI?/?2;
????????????????else
????????????????????return?-Math.PI?/?2;
????????????}
????????????else
????????????{
????????????????if?(real?>?0)
????????????????????return?Math.Atan2(imag
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????34816??2008-07-28?14:18??C#數字圖像處理算法\image\10\dpcm.vsd
?????文件????1440054??2008-07-28?10:01??C#數字圖像處理算法\image\10\LZW解碼.bmp
?????文件?????247686??2008-07-28?09:57??C#數字圖像處理算法\image\10\LZW運算對話框.bmp
????..A.SH.?????41472??2011-04-09?22:55??C#數字圖像處理算法\image\10\Thumbs.db
?????文件?????328854??2008-07-30?09:30??C#數字圖像處理算法\image\10\傅里葉變換編碼對話框.bmp
?????文件????1440054??2008-07-30?11:12??C#數字圖像處理算法\image\10\傅里葉變換編碼結果.bmp
?????文件????1766150??2008-07-22?14:50??C#數字圖像處理算法\image\10\哈夫曼編碼.bmp
?????文件?????319854??2008-07-30?16:45??C#數字圖像處理算法\image\10\小波變換對話框.bmp
?????文件????1440054??2008-07-30?16:46??C#數字圖像處理算法\image\10\小波變換結果.bmp
?????文件????1440054??2008-07-25?14:59??C#數字圖像處理算法\image\10\行程解碼.bmp
?????文件?????247686??2008-07-25?14:41??C#數字圖像處理算法\image\10\行程運算對話框.bmp
?????文件?????225150??2008-08-27?21:20??C#數字圖像處理算法\image\10\預測編碼對話框.bmp
?????文件????1440054??2008-07-28?21:54??C#數字圖像處理算法\image\10\預測解碼結果.bmp
?????文件????1690470??2008-07-23?22:22??C#數字圖像處理算法\image\10\香農-弗諾編碼.bmp
?????文件????1596054??2008-07-23?22:25??C#數字圖像處理算法\image\10\香農編碼.bmp
?????目錄??????????0??2011-04-09?22:39??C#數字圖像處理算法\image\10
?????文件?????591294??2008-08-08?19:38??C#數字圖像處理算法\image\11\HSI空間分量對話框.bmp
?????文件????1440054??2008-08-08?19:40??C#數字圖像處理算法\image\11\HSI空間分量調整結果.bmp
?????文件?????591294??2008-08-08?19:32??C#數字圖像處理算法\image\11\RGB空間分量對話框.bmp
?????文件????1440054??2008-08-08?19:34??C#數字圖像處理算法\image\11\RGB空間分量調整結果.bmp
????..A.SH.??????7680??2011-04-09?22:55??C#數字圖像處理算法\image\11\Thumbs.db
?????文件??????49152??2008-08-05?16:29??C#數字圖像處理算法\image\11\傳遞函數.vsd
?????文件?????300294??2008-08-06?08:48??C#數字圖像處理算法\image\11\偽彩色處理對話框.bmp
?????文件?????284646??2008-08-10?12:41??C#數字圖像處理算法\image\11\平滑處理對話框.bmp
?????文件????1440054??2008-08-10?12:43??C#數字圖像處理算法\image\11\平滑處理結果.bmp
?????文件????1440054??2008-08-29?20:58??C#數字圖像處理算法\image\11\強度分層法.bmp
?????文件?????147318??2008-08-13?18:33??C#數字圖像處理算法\image\11\彩色圖像分割對話框.bmp
?????文件????1440054??2008-08-13?18:37??C#數字圖像處理算法\image\11\彩色圖像分割結果.bmp
?????文件?????249478??2008-08-13?10:50??C#數字圖像處理算法\image\11\彩色圖像邊緣檢測對話框.bmp
?????文件????1440054??2008-08-30?10:38??C#數字圖像處理算法\image\11\彩色圖像邊緣檢測結果.bmp
............此處省略628個文件信息
評論
共有 條評論