|
|
# DIP_Code
|
|
|
|
|
|
### 介绍
|
|
|
已实现功能:
|
|
|
1. 第二章:彩色空间转换(转HSV、转GRAY、转BGRA、转HLS、转YUV)
|
|
|
2. 第三章:算数运算、逻辑运算、缩放、旋转、翻转、对比度、亮度、FFT变换、DCT变换、仿射变换
|
|
|
3. 第四章:直方图(线性拉伸、非线性拉伸、自适应均衡、全局均衡)
|
|
|
4. 第五章:边缘检测(增强图像、Robert算子、Prewitt算子、Sobel算子、Laplacian算子、LoG算子、Canny算子
|
|
|
5. 第六章:平滑(均值模糊、高斯模糊、中值模糊)
|
|
|
6. 第七章:锐化
|
|
|
7. 第八章:腐蚀膨胀(美颜)
|
|
|
8. 第九章:噪声描述器(椒盐噪声、高斯噪声)、均值类滤波器(算数均值滤波器、几何均值滤波器、谐波均值滤波器)、排序统计类滤波器(最大值滤波器、中值滤波器 、最小值滤波器)、选择性滤波器(高通滤波器、低通滤波器、带通滤波器)
|
|
|
9. 文字编辑
|
|
|
10. 图像动作驱动
|
|
|
|
|
|
### 安装教程
|
|
|
|
|
|
1. 使用IDE打开本项目
|
|
|
2. 打开cmd,使用pip install xxx==version -i https://pypi.tuna.tsinghua.edu.cn/simple 下载“使用工具”中提及的第三方库。xxx为库名,version为版本号,建议使用“使用工具”中推荐的版本号
|
|
|
3. 都安装好后即可开始使用
|
|
|
|
|
|
### 使用工具
|
|
|
1. Python 3.9
|
|
|
2. imageio 2.19.3
|
|
|
3. matplotlib 3.5.2
|
|
|
4. numpy 1.22.2
|
|
|
5. pandas 1.3.4
|
|
|
6. python-dateutil 2.8.2
|
|
|
7. pytz 2021.3
|
|
|
8. PyYAML 5.4.1
|
|
|
9. scikit-image 0.18.3
|
|
|
10. scikit-learn 1.1.1
|
|
|
11. scipy 1.8.1
|
|
|
12. torch 1.10.0
|
|
|
13. torchvision 0.11.1
|
|
|
14. tqdm 4.64.0
|
|
|
|
|
|
### 使用说明
|
|
|
|
|
|
####文字编辑
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 在“输入文字”文本框中输入文字
|
|
|
4. 在“输入坐标”文本框中输入希望文字显现的坐标,可点击“坐标确认”来确认指定坐标位置
|
|
|
5. 在“字体大小”下拉框中选择希望文字显现的大小
|
|
|
6. 在“字体厚度”下拉框中选择希望文字显现的厚度
|
|
|
7. 在“字体颜色”下拉框中选择希望文字显现的颜色
|
|
|
8. 在“字体样式”下拉框中选择希望文字显现的样式
|
|
|
9. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
10. 运行结果会自动保存在resources/img下change.png
|
|
|
11. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####彩色空间转换
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击基础操作->彩色空间转换,即可选择转换方式
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####FFT、DCT、仿射变换
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击基础操作,即可选择变换方式
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####缩放、旋转、翻转
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击基础操作,即可选择想要的功能
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####直方图的操作
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击直方图,即可选择对直方图的操作
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####模糊
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击滤镜->平滑,即可选择模糊方式
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####锐化
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击滤镜->锐化->锐化
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####美颜
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击滤镜->美颜
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####添加噪声
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击图像恢复->添加噪声,即可选择想要添加的噪声
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####滤波器
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 滤波器分为三类滤波器,其中各有三种滤波器。
|
|
|
1. 单击图像恢复->均值类滤波器,即可选择均值类的滤波器
|
|
|
2. 单击图像恢复->排序统计类滤波器,即可选择排序统计类滤波器
|
|
|
3. 单击图像恢复->选择性滤波器,即可选择选择性滤波器
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####图像拼接
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击图像合成->图像拼接
|
|
|
4. 选择图片,即可将两张图拼接在一起
|
|
|
5. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
6. 运行结果会自动保存在resources/img下change.png
|
|
|
7. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####算术运算
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击图像合成->算术运算,选择想要的算数运算符
|
|
|
4. 选择图片,即可对两张图做运算
|
|
|
5. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
6. 运行结果会自动保存在resources/img下change.png
|
|
|
7. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####逻辑运算
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击图像合成->逻辑运算,选择想要的算数运算符
|
|
|
4. 选择图片,即可对两张图做运算
|
|
|
5. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
6. 运行结果会自动保存在resources/img下change.png
|
|
|
7. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####图像增强
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击边缘检测->图像增强
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####边缘检测
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. resources/img下提供了测试用例照片test1.jpg,也可选择本机中的照片。white board.jpg是初始化的图片
|
|
|
3. 单击边缘检测,选择想要的算子
|
|
|
4. 单击文件->保存,选择路径保存处理过后的图片
|
|
|
5. 运行结果会自动保存在resources/img下change.png
|
|
|
6. 单击原图->返回原图,返回处理之前的初始图片
|
|
|
####图像动作驱动
|
|
|
1. 运行demo.py单击文件->打开,选择图片
|
|
|
2. 单击图像动作驱动->图像动作驱动
|
|
|
3. sup-mat下提供了初始照片1-9.png和初始视频source.mp4
|
|
|
4. 运行结果保存在01-09.mp4
|
|
|
|