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

大型门户网站设计永久开源的免费建站系统

大型门户网站设计,永久开源的免费建站系统,公司网站怎么建设,工信部网站备案查询验证码错误一、灰度图与彩色图区别 灰度图与彩色图最大的不同就是:彩色图是由R、G、B 三个通道组成,而灰度图只有一个通道,也称为单通道图像,所以彩色图转成灰度图的过程本质上就是 将R、G、B三通道合并成一个通道的过程。 二、灰度化 读取…

一、灰度图与彩色图区别

        灰度图与彩色图最大的不同就是:彩色图是由R、G、B 三个通道组成,而灰度图只有一个通道,也称为单通道图像,所以彩色图转成灰度图的过程本质上就是 将R、G、B三通道合并成一个通道的过程。

二、灰度化 

读取图片 

import cv2
import numpy as np
img=cv2.imread('light.jpg')

获取 图片高和宽

img_shape=img.shape

 利用numpy创建等宽高的画布

img_gray=np.zeros((img_shape[0],img_shape[1]),np.uint8)

注意:

        shape:是ndarray的一个属性,用来查看数组的形状shape读取到的形状与图像的实际宽和高是相反的,shape[0]代表的是图像的高度shape[1]代表的是图像的宽度 

2.1、加权平均法

        对于彩色图像的每个像素,它会按照一定的权重去乘以每个通道的像素值,并将其相加,得到最后的值 就是灰度图像中对应位置的像素值。

        权重的比例为:

                R乘以0.299

                G乘以0.587

                B乘以 0.114

        这是经过大量实验得到的一个权重比例,也是一个比较常用的权重比例。

weight_red=0.299
weight_green=0.587
weight_blue=0.114
for i in range(1067):for j in range(800):img_gray[i][j]=round(img[i,j][0]*0.114+img[i,j][1]*0.578+img[i,j][2]*0.299)

2.2、均值法

        对于彩色图像的每个像素,它会将R、G、B三个通道的像素值全部加起来,然后再除以三,得到的平均 值就是灰度图像中对应位置的像素值

for i in range(1067):for j in range(800):img_gray[i][j]=(int(img[i,j][0])+int(img[i,j][1])+int(img[i,j][2]))//3

2.3、最大值法

        对于彩色图像的每个像素,它会从R、G、B三个通道的值中选出最大的一个,并将其作为灰度图像中对 应位置的像素值。

for i in range(1067):for j in range(800):img_gray[i][j]=max(img[i,j][0],img[i,j][1],img[i,j][2])

2.4、完整代码 

import cv2  
import numpy as np  img = cv2.imread('light.jpg')  # 获取图像的形状 (高, 宽, 通道数)  
img_shape = img.shape  # 创建一个与输入图像高和宽相同的灰度图像,初始化为全零(黑色)  
img_gray = np.zeros((img_shape[0], img_shape[1]), np.uint8)  # 定义 RGB 颜色通道的加权系数,用于灰度转换  
weight_red = 0.299  
weight_green = 0.587  
weight_blue = 0.114  # 遍历图像的每一个像素  
# 假设图像的高度为 1067 和宽度为 800(请根据实际图像大小进行调整)  
for i in range(1067):  for j in range(800):  # 使用加权平均法将 RGB 转换为灰度值,并存储在灰度图像中  img_gray[i][j] = round(  img[i, j][0] * weight_blue +  # 蓝色通道  img[i, j][1] * weight_green + # 绿色通道  img[i, j][2] * weight_red      # 红色通道  )  # 显示生成的灰度图像  
cv2.imshow('light', img_gray)  # 等待用户按键后关闭窗口  
cv2.waitKey(0)  

三、opencv内置函数

        cvtColor

img_gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

四、库函数 

4.1、imread()

img = cv.imread(cv.samples.findFile(“starry_night.jpg”))

调用 cv::imread 函数会使用第一个参数指定的文件路径加载图像。第二个参数是可选的,它指定了我们想要图像的格式。这可能是:

  • IMREAD_COLOR 以 BGR 8 位格式加载图像。这是此处使用的默认值
  • IMREAD_UNCHANGED按原样加载图像(包括 Alpha 通道,如果存在)
  • IMREAD_GRAYSCALE 将图像加载为强度图像

注意

OpenCV 支持图像格式 Windows 位图 (bmp)、可移植图像格式 (pbm、pgm、ppm) 和 Sun 光栅 (sr, ras)。借助插件(如果您自己构建库,则需要指定使用它们,但在我们附带的软件包中默认存在),您还可以加载图像格式,如 JPEG(jpeg、jpg、jpe)、JPEG 2000(jp2 - 在 CMake 中代号为 Jasper)、TIFF 文件(tiff、tif)和便携式网络图形 (png)。此外,OpenEXR 也是一种可能性。

4.2、cvtColor()

COLOR_BGR2GRAY
Python:cv.COLOR_BGR2GRAY

在 RGB/BGR 和灰度之间转换,颜色转换

http://www.dtcms.com/wzjs/294460.html

相关文章:

  • 工程在哪个网站做推广比较合适网络营销的优势有哪些?
  • 个人网站建设书西安seo主管
  • 天津高端网站建设外国网站开放的浏览器
  • 做一个招聘信息的网站_用什么做网站的软件网站运营包括哪些内容
  • 绵阳top唯艺网站建设农产品网络营销方案
  • 做网站顾客提现金额后台pc网站优化排名软件
  • 青岛独立站开发公司百度明星人气榜排名
  • asp动态网站开发实例教程衡阳百度推广
  • 企业网站推广如何免费制作网站
  • 老司机最好用的浏览器seo关键词优化的技巧
  • 企业官网网站建设如何进行网络推广
  • 用织梦系统做的2个网站要把它都上传到服务器上吗怎么宣传自己的产品
  • 兼职网网站建设方案他达拉非片正确服用方法
  • 外贸网站如何建设营销推广ppt
  • java开发网站网站收录情况
  • 网站建设dqcx查关键词排名软件
  • 旅游网站专业化建设的要点河南网站设计
  • 六安做网站的公司百度风云排行榜
  • 中小型网站建设流程武汉seo公司哪家好
  • jsp做网站多吗谷歌app官方下载
  • 网站开发团队成员介绍外贸b2b平台都有哪些网站
  • 建网站域名检测工具
  • 广东网站设计流程google怎么推广
  • 大连网站制作团队自己建网站详细流程
  • 青岛网站开发培训价格重庆百度推广seo
  • 资阳网站建设百度收录是什么意思
  • 做百度个人网站百度推广点击软件
  • 网站热力图用ps怎么做百度快照下载
  • 网站建设的三要素友情链接检测659292
  • 做招聘网站需要人力资源许可网络测试