当前位置: 首页 > news >正文

外贸网站怎么做谷歌搜索网站建设视频教程网站

外贸网站怎么做谷歌搜索,网站建设视频教程网站,网络营销实现方式有哪些,微信管理中心文章目录 #x1f9e1;#x1f9e1;实验流程#x1f9e1;#x1f9e1;1.读入图像‘rice.png’#xff0c;在一个窗口中显示灰度级n64#xff0c;128和256的图像直方图。2.调解图像灰度范围#xff0c;观察变换后的图像及其直方图的变化。3.分别对图像‘pout.tif’和‘ti… 文章目录 实验流程1.读入图像‘rice.png’在一个窗口中显示灰度级n64128和256的图像直方图。2.调解图像灰度范围观察变换后的图像及其直方图的变化。3.分别对图像‘pout.tif’和‘tire.tif’进行直方图均衡化处理比较处理前后图像及直方图分布的变化。4.读取一幅彩色图像对RGB图像的每个通道进行直方图均衡化,对均衡化后进行重新合并成彩色图像展示不同阶段的图像效果。另将RGB图像转换为HSV图像rgb2hsv函数分别对三分量的图像行直方图均衡化最后合并成新的彩色图像分析不同阶段的图像效果。5.自行设计程序实现图像的直方图均衡 所有代码 实验流程 1.读入图像‘rice.png’在一个窗口中显示灰度级n64128和256的图像直方图。 2.调解图像灰度范围观察变换后的图像及其直方图的变化。 3.分别对图像‘pout.tif’和‘tire.tif’进行直方图均衡化处理比较处理前后图像及直方图分布的变化。 4.读取一幅彩色图像对RGB图像的每个通道进行直方图均衡化,对均衡化后进行重新合并成彩色图像展示不同阶段的图像效果。另将RGB图像转换为HSV图像rgb2hsv函数分别对三分量的图像行直方图均衡化最后合并成新的彩色图像分析不同阶段的图像效果。 如下图对RGB三个颜色通道进行直方图均衡化后图像的对比度得到了改善灰度级的分布更加均匀。 如下图HSV模型是基于人类感知的颜色模型HSV分别表示色相Hue、饱和度Saturation和明度Value对其均衡化后增强了图像的对比度和色彩鲜艳度使得图像更加清晰、生动 5.自行设计程序实现图像的直方图均衡 主要思路 1.统计原始图像的直方图 2.计算直方图累积分布 3.用累积分布函数作变换函数进行图像灰度变换 所有代码 主要采用opencv库这里的代码是用jupyter写的。 1-1、1-2 直方图显示、直方图灰度调节image cv2.imread(img/test1_rice.png, cv2.IMREAD_GRAYSCALE)plt.figure(figsize(15, 12))# 显示原始图像和直方图 plt.subplot(3, 3, 1) plt.imshow(image, cmapgray) plt.title(Original Image, fontsize18) plt.axis(off)for i, n in enumerate([64, 128, 256]):plt.subplot(3, 3, i 4)plt.hist(image.ravel(), binsn, range[0, 256], colorb, alpha0.5)plt.title(Histogram (n{}).format(n), fontsize18)plt.xlabel(Pixel Value, fontsize16)plt.ylabel(Frequency, fontsize16)# 使用imadjust函数进行灰度调节 adjusted_image cv2.convertScaleAbs(image, alpha1.5, beta20)# 显示调节后的图像和直方图 plt.subplot(3, 3, 7) plt.imshow(adjusted_image, cmapgray) plt.title(Adjusted Image, fontsize18) plt.axis(off)plt.subplot(3, 3, 8) plt.hist(adjusted_image.ravel(), bins256, range[0, 256], colorb, alpha0.5) plt.title(Adjusted Histogram, fontsize18) plt.xlabel(Pixel Value, fontsize16) plt.ylabel(Frequency, fontsize16)plt.tight_layout() plt.show()1-3 直方图均衡化 image_pout cv2.imread(img/test1_pout.png, cv2.IMREAD_GRAYSCALE) image_tire cv2.imread(img/test1_tire.png, cv2.IMREAD_GRAYSCALE)# 直方图均衡化处理 equalized_pout cv2.equalizeHist(image_pout) equalized_tire cv2.equalizeHist(image_tire)# 绘制处理前后图像及直方图分布的变化 plt.figure(figsize(12, 8))# 原始图像及其直方图 plt.subplot(2, 4, 1) plt.imshow(image_pout, cmapgray) plt.title(Original Pout) plt.axis(off)plt.subplot(2, 4, 2) plt.hist(image_pout.ravel(), bins256, range[0, 256], colorb, alpha0.5) plt.title(Histogram (Before)) plt.xlabel(Pixel Value) plt.ylabel(Frequency)plt.subplot(2, 4, 5) plt.imshow(image_tire, cmapgray) plt.title(Original Tire) plt.axis(off)plt.subplot(2, 4, 6) plt.hist(image_tire.ravel(), bins256, range[0, 256], colorb, alpha0.5) plt.title(Histogram (Before)) plt.xlabel(Pixel Value) plt.ylabel(Frequency)# 直方图均衡化后图像及其直方图 plt.subplot(2, 4, 3) plt.imshow(equalized_pout, cmapgray) plt.title(Equalized Pout) plt.axis(off)plt.subplot(2, 4, 4) plt.hist(equalized_pout.ravel(), bins256, range[0, 256], colorb, alpha0.5) plt.title(Histogram (After)) plt.xlabel(Pixel Value) plt.ylabel(Frequency)plt.subplot(2, 4, 7) plt.imshow(equalized_tire, cmapgray) plt.title(Equalized Tire) plt.axis(off)plt.subplot(2, 4, 8) plt.hist(equalized_tire.ravel(), bins256, range[0, 256], colorb, alpha0.5) plt.title(Histogram (After)) plt.xlabel(Pixel Value) plt.ylabel(Frequency)plt.tight_layout() plt.show()1-4 RGB和HSV均衡化 image cv2.imread(img/test1_LenaRGB.tif)# 处理RGB图像 image_rgb cv2.cvtColor(image, cv2.COLOR_BGR2RGB) # opencv是BGR imshow是RGB r_channel, g_channel, b_channel cv2.split(image_rgb) r_equalized cv2.equalizeHist(r_channel) g_equalized cv2.equalizeHist(g_channel) b_equalized cv2.equalizeHist(b_channel) equalized_image cv2.merge((r_equalized, g_equalized, b_equalized))plt.figure(figsize(18, 20))plt.subplot(4, 2, 1) plt.imshow(image_rgb) plt.title(Original Channels, fontsize18) plt.axis(off)plt.subplot(4, 2, 2) plt.imshow(cv2.merge((r_equalized, g_equalized, b_equalized))) plt.title(Equalized Channels, fontsize18) plt.axis(off)plt.subplot(4, 2, 3) plt.hist(r_channel.ravel(), bins256, range[0, 256], colorr, alpha0.5) plt.hist(g_channel.ravel(), bins256, range[0, 256], colorg, alpha0.5) plt.hist(b_channel.ravel(), bins256, range[0, 256], colorb, alpha0.5) plt.title(Histogram (Before Equalization), fontsize18) plt.xlabel(Pixel Value, fontsize18) plt.ylabel(Frequency, fontsize18)plt.subplot(4, 2, 4) plt.hist(r_equalized.ravel(), bins256, range[0, 256], colorr, alpha0.5) plt.hist(g_equalized.ravel(), bins256, range[0, 256], colorg, alpha0.5) plt.hist(b_equalized.ravel(), bins256, range[0, 256], colorb, alpha0.5) plt.title(Histogram (After Equalization), fontsize18) plt.xlabel(Pixel Value, fontsize18) plt.ylabel(Frequency, fontsize18)# 处理HSV图像 hsv_image cv2.cvtColor(image, cv2.COLOR_BGR2HSV) h_channel, s_channel, v_channel cv2.split(hsv_image) equalized_h_channel cv2.equalizeHist(h_channel) equalized_s_channel cv2.equalizeHist(s_channel) equalized_v_channel cv2.equalizeHist(v_channel) equalized_hsv_image cv2.merge((equalized_h_channel, equalized_s_channel, equalized_v_channel)) equalized_rgb_image cv2.cvtColor(equalized_hsv_image, cv2.COLOR_HSV2RGB)plt.subplot(4, 2, 5) plt.imshow(hsv_image) plt.title(Original HSV Channels, fontsize18) plt.axis(off)plt.subplot(4, 2, 6) plt.imshow(equalized_rgb_image) plt.title(Equalized HSV Channels, fontsize18) plt.axis(off)plt.subplot(4, 2, 7) plt.hist(h_channel.ravel(), bins256, range[0, 256], alpha0.5) plt.hist(s_channel.ravel(), bins256, range[0, 256], alpha0.5) plt.hist(v_channel.ravel(), bins256, range[0, 256], alpha0.5) plt.title(Histogram (After Equalization), fontsize18) plt.xlabel(Pixel Value, fontsize18) plt.ylabel(Frequency, fontsize18)plt.subplot(4, 2, 8) plt.hist(equalized_h_channel.ravel(), bins256, range[0, 256], alpha0.5) plt.hist(equalized_s_channel.ravel(), bins256, range[0, 256], alpha0.5) plt.hist(equalized_v_channel.ravel(), bins256, range[0, 256], alpha0.5) plt.title(Histogram (After Equalization), fontsize18) plt.xlabel(Pixel Value, fontsize18) plt.ylabel(Frequency, fontsize18)plt.tight_layout() plt.show()1-5 手写直方图均衡化 #建立原始图像各灰度级的灰度值与像素个数对应表 def Origin_histogram( img ): # print(img.shape)histogram {}for i in range( img.shape[0] ):for j in range( img.shape[1] ):k img[i][j]if k in histogram:histogram[k] 1else:histogram[k] 1sorted_histogram {}#建立排好序的映射表sorted_list sorted( histogram )#根据灰度值进行从低至高的排序for j in range( len( sorted_list ) ):sorted_histogram[ sorted_list[j] ] histogram[ sorted_list[j] ]return sorted_histogramdef equalization_histogram( histogram, img ): # print(histogram)pr {} #建立概率分布映射表for i in histogram.keys():pr[i] histogram[i] / ( img.shape[0] * img.shape[1] ) # 计算累计分布变换函数tmp 0for m in pr.keys():tmp pr[m]pr[m] max( histogram ) * tmp # print(pr)# 将原图像每一点都进行变换new_img np.zeros( shape ( img.shape[0], img.shape[1] ), dtype np.uint8 )for k in range( img.shape[0] ):for l in range( img.shape[1] ):new_img[k][l] pr[img[k][l]]return new_img# 计算灰度直方图 def GrayHist( img ):height, width img.shapegrayHist np.zeros([256], np.uint64)for i in range(height):for j in range(width):grayHist[img[i][j]] 1return grayHistimg cv2.imread( img/test1_pout.png, cv2.IMREAD_GRAYSCALE ) # 计算原图灰度直方图 origin_histogram Origin_histogram( img ) # 直方图均衡化 new_img equalization_histogram( origin_histogram, img ) # 计算均衡化后的灰度直方图 origin_grayHist GrayHist(img) equaliza_grayHist GrayHist( new_img )# 绘制灰度直方图 x np.arange(256) plt.figure(figsize(15,10)) plt.subplot( 2, 2, 1 ) plt.plot(x, origin_grayHist, linewidth2 , alpha0.5) plt.title(Origin,fontsize18) plt.ylabel(Frequency,fontsize18)plt.subplot( 2, 2, 2 ) plt.plot(x, equaliza_grayHist, linewidth2, alpha0.5) plt.title(Equalization,fontsize18) plt.ylabel(Frequency,fontsize18)plt.subplot( 2, 2, 3 ) plt.imshow( img, cmap plt.cm.gray ) plt.title( Origin ,fontsize18)plt.subplot( 2, 2, 4 ) plt.imshow( new_img, cmap plt.cm.gray ) plt.title( Equalization ,fontsize18) plt.show()
http://www.hkea.cn/news/14539242/

相关文章:

  • 手机触屏网站开发dede网站重新安装
  • 建网站策划方案上虞网站设计
  • 四川做网站的上海seo推广整站
  • 织梦电影网站模板下载做阿里巴巴网站要多少钱
  • 美妆网站设计模板足彩网站建设
  • 网站建设宝典聊城专业网站建设
  • 怎么把网站横幅做很大公司做网站需要注意什么
  • 网站维护意义wordpress与drupal对比
  • 学生校园网站模板公司网站的开发策略
  • 婚庆网站html模板龙岩天宫山住宿怎么订
  • vscode的网站开发配置用一个口罩做一把枪
  • 西北电力建设第一工程公司网站云南最近出了什么流行病
  • 东城区网站建设关于公司网络优化方案
  • 上海网站的优化公司哪家好国内各大网站
  • 网站备案被注销 接入商为学校网站做网站推广策划
  • 宁阳网站定制响应式网站软件
  • 哪里有做网站服务商重庆教育建设集团有限公司网站
  • 唐山网站建设学徒高邮城乡建设网站
  • 微舍 微网站 怎么做ftp备份网站
  • 网站装修怎么做点菜网站模板
  • 有哪些专做旅游定制的网站wordpress模板破解版
  • 微信小程序免费开店详细步骤广东seo
  • 用软件什么做网站wordpress 更改自带域名
  • 百度对新网站排名问题湖南省建设厅网站首页
  • 企业网站推广文案上海建筑网站建设
  • 专业做律师网站的公司企业网站seo实
  • 个人做网站费用营销型网站开发
  • 如何开网站详细步骤图湘潭网站建设口碑好磐石网络
  • 微信微网站开发百度云网站建设 套格式
  • 云县网站建设商丘广告推广