电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

python實(shí)現(xiàn)逆濾波與維納濾波示例

瀏覽:7日期:2022-08-06 09:18:35

構(gòu)建運(yùn)動(dòng)模糊模型

現(xiàn)假定相機(jī)不動(dòng),圖像f(x,y)在圖像面上移動(dòng)并且圖像f(x,y)除移動(dòng)外不隨時(shí)間變化。令x0(t)和y0(t)分別代表位移的x分量和y分量,那么在快門開啟的時(shí)間T內(nèi),膠片上某點(diǎn)的總曝光量是圖像在移動(dòng)過程中一系列相應(yīng)像素的亮度對該點(diǎn)作用之總和。也就是說,運(yùn)動(dòng)模糊圖像是由同一圖像在產(chǎn)生距離延遲后與原圖像想疊加而成。如果快門開啟與關(guān)閉的時(shí)間忽略不計(jì),則有:

python實(shí)現(xiàn)逆濾波與維納濾波示例

由于各種運(yùn)動(dòng)都是勻速直線運(yùn)動(dòng)的疊加,因而我們只需考慮勻速直線運(yùn)動(dòng)即可。但由于我們自身水平有限,且旨在探討找到實(shí)現(xiàn)運(yùn)動(dòng)模糊復(fù)原方法的思想與方向,因而我們未能自行構(gòu)建模型,而是借鑒了參考文獻(xiàn)[1]中建立的運(yùn)動(dòng)模糊模型。關(guān)于本模型的理論依據(jù)參見參考文獻(xiàn)[1].

下面我們描述一下該模型函數(shù)motion_process(image_size,motion_angle),它包含兩個(gè)參數(shù):圖像的尺寸大小image_size以及運(yùn)動(dòng)的角度motion_angle。

例如,當(dāng)運(yùn)動(dòng)位移為9、運(yùn)動(dòng)角度為45度時(shí),則該模型函數(shù)的構(gòu)建過程如下:

1. 首先是創(chuàng)建與圖像同等大小的全0矩陣,然后找到全0矩陣的中心行數(shù)center_position,再計(jì)算出運(yùn)動(dòng)角度的tan值與cot值,算出運(yùn)動(dòng)的偏移量offset。

2. python實(shí)現(xiàn)逆濾波與維納濾波示例PSF[int(center_position+offset),int(center_position-offset)]=1

3. python實(shí)現(xiàn)逆濾波與維納濾波示例PSF[int(center_position-offset),int(center_position+offset)]=1

則該模型對應(yīng)的圖像如下圖所示:

python實(shí)現(xiàn)逆濾波與維納濾波示例

運(yùn)動(dòng)位移為9,運(yùn)動(dòng)角度分別為45°、30°、60°時(shí),運(yùn)動(dòng)模糊模型對應(yīng)的圖像

import matplotlib.pyplot as graphimport numpy as npfrom numpy import fftimport mathimport cv2 # 仿真運(yùn)動(dòng)模糊def motion_process(image_size,motion_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() #對點(diǎn)擴(kuò)散函數(shù)進(jìn)行歸一化亮度 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() #對圖片進(jìn)行運(yùn)動(dòng)模糊def make_blurred(input, PSF, eps): input_fft = fft.fft2(input)# 進(jìn)行二維數(shù)組的傅里葉變換 PSF_fft = fft.fft2(PSF)+ eps blurred = fft.ifft2(input_fft * PSF_fft) blurred = np.abs(fft.fftshift(blurred)) return blurred def inverse(input, PSF, eps): # 逆濾波 input_fft = fft.fft2(input) PSF_fft = fft.fft2(PSF) + eps #噪聲功率,這是已知的,考慮epsilon result = fft.ifft2(input_fft / PSF_fft) #計(jì)算F(u,v)的傅里葉反變換 result = np.abs(fft.fftshift(result)) return result def wiener(input,PSF,eps,K=0.01): #維納濾波,K=0.01 input_fft=fft.fft2(input) PSF_fft=fft.fft2(PSF) +eps PSF_fft_1=np.conj(PSF_fft) /(np.abs(PSF_fft)**2 + K) result=fft.ifft2(input_fft * PSF_fft_1) result=np.abs(fft.fftshift(result)) return result image = cv2.imread(’you.jpg’)image = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)img_h=image.shape[0]img_w=image.shape[1]graph.figure(1)graph.xlabel('Original Image')graph.gray()graph.imshow(image) #顯示原圖像 graph.figure(2)graph.gray()#進(jìn)行運(yùn)動(dòng)模糊處理PSF = motion_process((img_h,img_w), 60)blurred = np.abs(make_blurred(image, PSF, 1e-3)) graph.subplot(231)graph.xlabel('Motion blurred')graph.imshow(blurred) result = inverse(blurred, PSF, 1e-3) #逆濾波graph.subplot(232)graph.xlabel('inverse deblurred')graph.imshow(result) result=wiener(blurred,PSF,1e-3) #維納濾波graph.subplot(233)graph.xlabel('wiener deblurred(k=0.01)')graph.imshow(result) blurred_noisy=blurred + 0.1 * blurred.std() * np.random.standard_normal(blurred.shape) #添加噪聲,standard_normal產(chǎn)生隨機(jī)的函數(shù) graph.subplot(234)graph.xlabel('motion & noisy blurred')graph.imshow(blurred_noisy) #顯示添加噪聲且運(yùn)動(dòng)模糊的圖像 result = inverse(blurred_noisy, PSF, 0.1+1e-3) #對添加噪聲的圖像進(jìn)行逆濾波graph.subplot(235)graph.xlabel('inverse deblurred')graph.imshow(result) result=wiener(blurred_noisy,PSF,0.1+1e-3) #對添加噪聲的圖像進(jìn)行維納濾波graph.subplot(236)graph.xlabel('wiener deblurred(k=0.01)')graph.imshow(result) graph.show()

參考文獻(xiàn)

[1] 何紅英. 運(yùn)動(dòng)模糊圖像恢復(fù)算法的研究與實(shí)現(xiàn)[D]. 西安科技大學(xué)碩士學(xué)位論文. 2011.

[2] Rafael C.Gonzalez,Richard E.Woods,Steven L.Eddins. 數(shù)字圖像處理的MATLAB實(shí)現(xiàn)(第2版)[M]. 阮秋琦,譯. 北京:清華大學(xué)出版社,2013.

[3] 陳建功. 運(yùn)動(dòng)模糊圖像復(fù)原算法研究[D]. 南昌航空大學(xué)碩士學(xué)位論文. 2012.

以上這篇python實(shí)現(xiàn)逆濾波與維納濾波示例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 沥青灌缝机_路面灌缝机_道路灌缝机_沥青灌缝机厂家_济宁萨奥机械有限公司 | 带锯机|木工带锯机圆木推台锯|跑车带锯机|河北茂业机械制造有限公司| | 圆窗水平仪|伊莉莎冈特elesa+ganter | 万烁建筑设计院-建筑设计公司加盟,设计院加盟分公司,市政设计加盟 | 立式壁挂广告机厂家-红外电容触摸一体机价格-华邦瀛 | 真空吸污车_高压清洗车厂家-程力专用汽车股份有限公司官网 | 100国际学校招生 - 专业国际学校择校升学规划 | 非甲烷总烃分析仪|环控百科| 冷凝水循环试验箱-冷凝水试验箱-可编程高低温试验箱厂家-上海巨为(www.juweigroup.com) | 安徽合肥格力空调专卖店_格力中央空调_格力空调总经销公司代理-皖格制冷设备 | 海峰资讯 - 专注装饰公司营销型网站建设和网络营销培训 | 企典软件一站式企业管理平台,可私有、本地化部署!在线CRM客户关系管理系统|移动办公OA管理系统|HR人事管理系统|人力 | 一体化污水处理设备_生活污水处理设备_全自动加药装置厂家-明基环保 | 强效碱性清洗剂-实验室中性清洗剂-食品级高纯氮气发生器-上海润榕科学器材有限公司 | 软启动器-上海能曼电气有限公司| 石磨面粉机|石磨面粉机械|石磨面粉机组|石磨面粉成套设备-河南成立粮油机械有限公司 | LOGO设计_品牌设计_VI设计 - 特创易 | 济南ISO9000认证咨询代理公司,ISO9001认证,CMA实验室认证,ISO/TS16949认证,服务体系认证,资产管理体系认证,SC食品生产许可证- 济南创远企业管理咨询有限公司 郑州电线电缆厂家-防火|低压|低烟无卤电缆-河南明星电缆 | 压砖机、液压制砖机、静压砖机、环保砖机生产厂家—杜甫机械 | 制丸机,小型中药制丸机,全自动制丸机价格-甘肃恒跃制药设备有限公司 | 油罐车_加油机_加油卷盘_加油机卷盘_罐车人孔盖_各类球阀_海底阀等车用配件厂家-湖北华特专用设备有限公司 | 大通天成企业资质代办_承装修试电力设施许可证_增值电信业务经营许可证_无人机运营合格证_广播电视节目制作许可证 | 重庆磨床过滤机,重庆纸带过滤机,机床伸缩钣金,重庆机床钣金护罩-重庆达鸿兴精密机械制造有限公司 | 广州中央空调回收,二手中央空调回收,旧空调回收,制冷设备回收,冷气机组回收公司-广州益夫制冷设备回收公司 | 防爆大气采样器-防爆粉尘采样器-金属粉尘及其化合物采样器-首页|盐城银河科技有限公司 | IWIS链条代理-ALPS耦合透镜-硅烷预处理剂-上海顶楚电子有限公司 lcd条形屏-液晶长条屏-户外广告屏-条形智能显示屏-深圳市条形智能电子有限公司 | 雾度仪_雾度计_透光率雾度仪价格-三恩时(3nh)光电雾度仪厂家 | 南京展台搭建-南京展会设计-南京展览设计公司-南京展厅展示设计-南京汇雅展览工程有限公司 | 新疆十佳旅行社_新疆旅游报价_新疆自驾跟团游-新疆中西部国际旅行社 | 派财经_聚焦数字经济内容服务平台| 建大仁科-温湿度变送器|温湿度传感器|温湿度记录仪_厂家_价格-山东仁科 | 传爱自考网_传爱自学考试网 | 超声波焊接机_超音波熔接机_超声波塑焊机十大品牌_塑料超声波焊接设备厂家 | 济南网站建设|济南建网站|济南网站建设公司【济南腾飞网络】【荐】 | 健身器材-健身器材厂家专卖-上海七诚健身器材有限公司 | 柴油机_柴油发电机_厂家_品牌-江苏卡得城仕发动机有限公司 | 除尘器布袋骨架,除尘器滤袋,除尘器骨架,电磁脉冲阀膜片,卸灰阀,螺旋输送机-泊头市天润环保机械设备有限公司 | ph计,实验室ph计,台式ph计,实验室酸度计,台式酸度计 | Trimos测长机_测高仪_TESA_mahr,WYLER水平仪,PWB对刀仪-德瑞华测量技术(苏州)有限公司 | 烟台条码打印机_烟台条码扫描器_烟台碳带_烟台数据采集终端_烟台斑马打印机-金鹏电子-金鹏电子 | 振动时效_振动时效仪_超声波冲击设备-济南驰奥机电设备有限公司 北京宣传片拍摄_产品宣传片拍摄_宣传片制作公司-现像传媒 |