直方图处理(数字图像处理)

现有一张64×64的图,以下表格是应用直方图均衡算法对其均衡,把原图的像素灰度值k(0~7)映射为新图的灰度值k'(0~7)。请填空。(注意:1-24空填实数,保留2位小数,剩下空填整数。不按要求系统会判错,如该填3.12而填成3.121是不给分的,1.00写成1也不给分。)

正确答案:

(1) 0.14

(2) 0.22

(3) 0.26

(4) 0.17

(5) 0.09

(6) 0.07

(7) 0.04

(8) 0.02

(9) 0.14

(10) 0.36

(11) 0.62

(12) 0.79

(13) 0.88

(14) 0.94

(15) 0.98

(16) 1.00

(17) 0.14

(18) 0.43

(19) 0.57

(20) 0.86

(21) 0.86

(22) 1.00

(23) 1.00

(24) 1.00

(25) 1

(26) 3

(27) 4

(28) 6

(29) 6

(30) 7

(31) 7

(32) 7

(33) 1

(34) 3

(35) 4

(36) 6

(37) 6

(38) 7

(39) 7

(40) 7

二. 简答题(共1题)

2. (简答题) 编写程序(函数),进行直方图均衡。要求从上题中的图的数据出发,打印出k、rk、nk、p (rk)、sk、量化sk、k'。并用代码绘制均衡前和均衡后的直方图进行对比。先把代码贴到答题框里,再把运行结果数据截图贴到框里,再把均衡前直方图贴进框里,最后把均衡后的直方图贴进框里。

from pandas import DataFrame
import matplotlib.pyplot as plt
data = {'k':[0,1,2,3,4,5,6,7],
       'rk':[0,'1/7','2/7','3/7','4/7','5/7','6/7',1],
       'nk':[560,920,1046,705,356,267,170,72],
       'p (rk)':[0.14,0.22,0.26,0.17,0.09,0.07,0.04,0.02],
       'sk':[0.14,0.36,0.61,0.79,0.88,0.94,0.98,1.00],
       '量化sk':[0.14,0.43,0.57,0.86,0.86,1.00,1.00,1.00],
       "k'":[1,3,4,6,6,7,7,7]}
d1=DataFrame(data)
print(d1)
before=d1[['rk','p (rk)']]
before.plot(kind='bar',x='rk', y='p (rk)', color='green')
plt.xlabel('rk')
plt.ylabel('p (rk)')
plt.xticks(rotation=45)
plt.title('before')
plt.show()

after= d1.groupby("k'")['p (rk)'].sum().reset_index()
after.plot(kind='bar',x="k'", y='p (rk)', color='green')
plt.xlabel("k'")
plt.ylabel('p (rk)')
plt.xticks(rotation=45)
plt.title('after')
plt.show()

正确答案:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值