博客
关于我
灰度图像直方图均衡化源码
阅读量:357 次
发布时间:2019-03-04

本文共 4865 字,大约阅读时间需要 16 分钟。

灰度图像直方图均衡化源码

# 本质:统计每个像素灰度 出现的概率 0-255 p# 累计概率 # 1 0.2  0.2# 2 0.3  0.5# 3 0.1  0.6# 256 # 100 0.5 255*0.5 = new import cv2import numpy as npimport matplotlib.pyplot as plt%matplotlib inlineimg = cv2.imread('image0.jpg',1)#cv2.imshow('src',img) #显示原图 第二个参数图片名称imgInfo = img.shapeheight = imgInfo[0]width = imgInfo[1]gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)cv2.imshow('src',gray) ##显示原图的灰度图像 第二个参数图片名称count = np.zeros(256,np.float)for i in range(0,height):    for j in range(0,width):        pixel = gray[i,j]        index = int(pixel)        count[index] = count[index]+1for i in range(0,255):    count[i] = count[i]/(height*width)#计算每个像素累计概率sum1 = float(0) # 累计概率和for i in range(0,256):    sum1 = sum1+count[i]    count[i] = sum1print('每个像素累计概率:\n',count)# 根据累计概率计算映射表map1 = np.zeros(256,np.uint16)for i in range(0,256):    map1[i] = np.uint16(count[i]*255)# 映射for i in range(0,height):    for j in range(0,width):        pixel = gray[i,j]        gray[i,j] = map1[pixel]cv2.imshow('dst',gray)cv2.waitKey(0)
  • 结果

  • 每个像素累计概率: [0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00 1.00172798e-04 5.70984949e-04 1.73799805e-03 3.47850041e-03 5.42936566e-03 7.44784754e-03 9.49137262e-03 1.17377476e-02 1.41919812e-02 1.75077008e-02 2.11214345e-02 2.47827502e-02 2.86018382e-02 3.24960557e-02 3.65730886e-02 4.06050437e-02 4.50627332e-02 4.96205955e-02 5.47243996e-02 5.99008289e-02 6.53527335e-02 7.11327039e-02 7.68350404e-02 8.27051664e-02 8.86529263e-02 9.48461095e-02 1.00758809e-01 1.06781698e-01 1.12709424e-01 1.18747339e-01 1.24840350e-01 1.30968421e-01 1.37289324e-01 1.43404873e-01 1.49773359e-01 1.56086750e-01 1.62264907e-01 1.68460595e-01 1.74789011e-01 1.80929604e-01 1.87222960e-01 1.93341013e-01 1.99504145e-01 2.05957777e-01 2.12694398e-01 2.19551226e-01 2.26372993e-01 2.33555383e-01 2.40965666e-01 2.48543738e-01 2.56394781e-01 2.64501265e-01 2.72823120e-01 2.81533145e-01 2.90496106e-01 2.99979965e-01 3.09361148e-01 3.19005284e-01 3.28686985e-01 3.38641657e-01 3.48714032e-01 3.58490897e-01 3.68187624e-01 3.77969497e-01 3.87743858e-01 3.97718565e-01 4.07250006e-01 4.16879116e-01 4.25629210e-01 4.34494503e-01 4.43151937e-01 4.51361098e-01 4.59189602e-01 4.66932959e-01 4.74383311e-01 4.81505597e-01 4.88657935e-01 4.95547319e-01 5.02319000e-01 5.09328592e-01 5.16328166e-01 5.23387844e-01 5.30147004e-01 5.36898650e-01 5.43297188e-01 5.49615587e-01 5.55558338e-01 5.61258170e-01 5.66682527e-01 5.72144449e-01 5.77180637e-01 5.82439708e-01 5.87428314e-01 5.92209061e-01 5.96987303e-01 6.01793093e-01 6.06759160e-01 6.11652601e-01 6.16433348e-01 6.21266685e-01 6.26077484e-01 6.30978438e-01 6.35501240e-01 6.39961433e-01 6.44589417e-01 6.49177331e-01 6.53562395e-01 6.58220430e-01 6.62635546e-01 6.67025619e-01 6.71385640e-01 6.75805765e-01 6.80243420e-01 6.84478225e-01 6.88788160e-01 6.93058025e-01 6.97448098e-01 7.01492575e-01 7.05584633e-01 7.09666675e-01 7.13651048e-01 7.17562796e-01 7.21364354e-01 7.25150885e-01 7.28777141e-01 7.32130425e-01 7.35333450e-01 7.38734317e-01 7.42092610e-01 7.45435877e-01 7.48453582e-01 7.51448749e-01 7.54534071e-01 7.57326388e-01 7.59878290e-01 7.62470261e-01 7.64834339e-01 7.67075706e-01 7.69144274e-01 7.71230372e-01 7.73231324e-01 7.75084521e-01 7.76965265e-01 7.78688237e-01 7.80333575e-01 7.82026496e-01 7.83576670e-01 7.84901455e-01 7.86361474e-01 7.87528487e-01 7.88768125e-01 7.89912599e-01 7.91077108e-01 7.92254138e-01 7.93453708e-01 7.94578147e-01 7.95760186e-01 7.96984799e-01 7.98244472e-01 7.99459067e-01 8.00781348e-01 8.02143698e-01 8.03573665e-01 8.04928502e-01 8.06333425e-01 8.07896121e-01 8.09659162e-01 8.11449751e-01 8.13330495e-01 8.15281360e-01 8.17477649e-01 8.20114698e-01 8.23493025e-01 8.28168591e-01 8.34021187e-01 8.40186822e-01 8.46532769e-01 8.53064035e-01 8.60136235e-01 8.67301094e-01 8.74571135e-01 8.81903784e-01 8.89624602e-01 8.96801983e-01 9.03771506e-01 9.10275225e-01 9.16363227e-01 9.22260900e-01 9.28594325e-01 9.34078786e-01 9.39500639e-01 9.44531817e-01 9.49099697e-01 9.53672585e-01 9.58220430e-01 9.62402645e-01 9.66329418e-01 9.70216123e-01 9.73579425e-01 9.76972778e-01 9.79860259e-01 9.82367083e-01 9.84453182e-01 9.86241266e-01 9.87861561e-01 9.89399214e-01 9.90628835e-01 9.91698179e-01 9.92662343e-01 9.93446195e-01 9.94169943e-01 9.94833588e-01 9.95499737e-01 9.96143347e-01 9.96714332e-01 9.97302847e-01 9.97856302e-01 9.98297062e-01 9.98712780e-01 9.99053367e-01 9.99346372e-01 9.99614335e-01 9.99784628e-01 9.99872280e-01 9.99939896e-01 9.99964940e-01 9.99979965e-01 9.99984974e-01 9.99989983e-01 9.99992487e-01 9.99994991e-01 9.99994991e-01 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00 1.00000000e+00]

在这里插入图片描述

转载地址:http://kffr.baihongyu.com/

你可能感兴趣的文章
mysql中int、bigint、smallint 和 tinyint的区别、char和varchar的区别详细介绍
查看>>
mysql中json_extract的使用方法
查看>>
mysql中json_extract的使用方法
查看>>
mysql中kill掉所有锁表的进程
查看>>
mysql中like % %模糊查询
查看>>
MySql中mvcc学习记录
查看>>
mysql中null和空字符串的区别与问题!
查看>>
MySQL中ON DUPLICATE KEY UPDATE的介绍与使用、批量更新、存在即更新不存在则插入
查看>>
MYSQL中TINYINT的取值范围
查看>>
MySQL中UPDATE语句的神奇技巧,让你操作数据库如虎添翼!
查看>>
Mysql中varchar类型数字排序不对踩坑记录
查看>>
MySQL中一条SQL语句到底是如何执行的呢?
查看>>
MySQL中你必须知道的10件事,1.5万字!
查看>>
MySQL中使用IN()查询到底走不走索引?
查看>>
Mysql中使用存储过程插入decimal和时间数据递增的模拟数据
查看>>
MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
查看>>
mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
查看>>
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>