資源簡介
主要內容:針對已有圖像,將圖像處理的各個環節融合成一個系統,完成常用的圖像處理功能。
設計要求:支持多種圖像格式;實現圖像變換、圖像對比度增強、圖像平滑、圖像銳化、假彩色與偽彩色、圖像恢復、圖像分割等具體功能;系統具有擴充性,便于后續添加獨立的模塊。
某科大學弟你是不是為信息工程綜合設計選題1發愁,別急,學長之前自己用做了的,里面基本功能都實現了,你們可以完善一下GUI,還有圖像恢復部分我們可能做的不好需要改進一下(我們當時評定標準只有及格和不及格,就懶得做了),如果覺得有用的話可以點贊、評論

代碼片段和文件信息
import?numpy?as?np
from?PIL?import?Image?as?im
from?PIL?import?ImageFilter?as?imf
from?PIL?import?ImageEnhance
from?tkinter?import?*
from?skimage?import?io
import?cv2
import?matplotlib.pyplot?as?graph
import?numpy?as?np
from?numpy?import?fft
import?math
pic_path?=?input(‘請輸入圖片地址:‘)
pic?=?im.open(pic_path)??#?句柄
def?weicaishe(pic?save_path?pic_grey):??#?生成偽彩色圖
????width?height?=?pic.size
????copypic?=?pic.copy()??#?保存副本免得原始圖像被修改
????for?x?in?range(width):
????????for?y?in?range(height):
????????????grey_va?=?int(pic_grey[y?x])??#?灰度值
????????????if?grey_va?40:??#?藍
????????????????copypic.putpixel((x?y)?(0?0?2?*?grey_va))
????????????elif?grey_va?80:??#?紫
????????????????copypic.putpixel((x?y)?(0?3?*?(grey_va-40)?80?+?2?*?(grey_va-40)))
????????????elif?grey_va?120:??#?綠
????????????????copypic.putpixel((x?y)?(0?120?+?2*(grey_va-80)?160-3*(grey_va-80)))
????????????elif?grey_va?160:??#?紅
????????????????copypic.putpixel((x?y)?(3*(grey_va-120)?0?0))
????????????elif?grey_va?200:??#?黃
????????????????copypic.putpixel((x?y)?(120+3*(grey_va-160)?6*(grey_va-160)?0))
????????????else:??#?白
????????????????copypic.putpixel((x?y)?(240?240?6*(grey_va-200)))
????copypic.save(save_path)
def?jiacaishe(pic?save_path):??#?生成假彩色圖
????width?height?=?pic.size
????copypic?=?pic.copy()??#?保存副本免得原始圖像被修改
????add?=?10
????for?x?in?range(width):
????????for?y?in?range(height):
????????????try:
????????????????r?g?b?=?pic.getpixel((x?y))[:3]
????????????except:
????????????????r?g?b?=?pic.getpixel((x?y))
????????????rgb_arr?=?np.array([r?g?b])
????????????max_index?=?np.argwhere(rgb_arr?==?max(rgb_arr))
????????????for?i?in?max_index:
????????????????i_num?=?int(i)
????????????????if?rgb_arr[i_num]?255-add:
????????????????????rgb_arr[i_num]?+=?add
????????????????else:
????????????????????rgb_arr[i_num]?=?255
????????????r?g?b?=?list(rgb_arr)
????????????copypic.putpixel((x?y)?(r?g?b))
????copypic.save(save_path)
#?仿真運動模糊
def?motion_process(image_sizemotion_angle):
????PSF?=?np.zeros(image_size)
????#?print(image_size)
????center_position=(image_size[0]-1)/2
????#?print(center_position)
?
????slope_tan=math.tan(motion_angle*math.pi/180)
????slope_cot=1/slope_tan
????if?slope_tan<=1:
????????for?i?in?range(15):
????????????offset=round(i*slope_tan)????#((center_position-i)*slope_tan)
????????????PSF[int(center_position+offset)int(center_position-offset)]=1
????????return?PSF?/?PSF.sum()??#對點擴散函數進行歸一化亮度
????else:
????????for?i?in?range(15):
????????????offset=round(i*slope_cot)
????????????PSF[int(center_position-offset)int(center_position+offset)]=1
????????return?PSF?/?PSF.sum()
?
#對圖片進行運動模糊
def?make_blurred(input?PSF?eps):
????input_fft?=?fft.fft2(input)#?進行二維數組的傅里葉變換
????PSF_fft?=?fft.fft2(PSF)+?eps
????blurred?=?fft.ifft2(input_fft?*?PSF_fft)
????blurred?=?np.abs(fft.fftshift(blurred))
????return?blurred
?
def?inverse(input
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-07-26?10:26??代碼\
?????文件?????1264224??2020-07-26?10:26??代碼\1組課程答辯.pptx
?????文件???????20722??2001-01-03?17:37??代碼\baboon.gif
?????文件???????21080??2001-01-03?17:38??代碼\bridge.gif
?????文件???????15687??2001-01-03?17:39??代碼\camera.gif
?????文件???????18745??2001-01-03?17:40??代碼\couple.gif
?????文件???????17880??2001-01-03?17:40??代碼\crowd.gif
?????文件???????19704??2001-01-03?17:41??代碼\goldhill.gif
?????文件???????19506??2001-01-03?17:42??代碼\lake.gif
?????文件???????19429??2001-01-03?17:42??代碼\lax.gif
?????文件???????18708??2001-01-03?17:43??代碼\lena(1).gif
?????文件???????10646??2020-05-30?14:48??代碼\lena.jpg
?????文件???????19333??2001-01-03?17:44??代碼\man.gif
?????文件???????16631??2001-01-03?17:44??代碼\milkdrop.gif
?????文件???????19523??2001-01-03?17:45??代碼\peppers.gif
?????文件????????9615??2020-07-19?23:27??代碼\picture_11.0.py
?????文件???????16456??2001-01-03?17:45??代碼\plane.gif
?????文件???????16812??2001-01-03?17:46??代碼\woman1.gif
?????文件???????17582??2001-01-03?17:46??代碼\woman2.gif
- 上一篇:TCP仿真(OPNET網絡仿真實驗).
- 下一篇:超級瑪麗奔跑跳躍微信小游戲源代碼
評論
共有 條評論