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

广州微信网站建设报价网站页面文案

广州微信网站建设报价,网站页面文案,宁波模板做网站,新网站建设问卷一、像素 1、获取图像指定位置的像素 import cv2 image cv2.imread(E:\\images\\2.png) px image[291,218] print(坐标(291,218)上的像素的BGR值是#xff1a;,px) #xff08;1#xff09;RGB色彩空间 R通道#xff1a;红色通道 G通道…一、像素 1、获取图像指定位置的像素 import cv2 image cv2.imread(E:\\images\\2.png) px image[291,218] print(坐标(291,218)上的像素的BGR值是,px) 1RGB色彩空间 R通道红色通道 G通道绿色通道 B通道蓝色通道 2RGB的表示 通常使用一个三维数组来表示一幅图像中某一个像素的RGB值 3RGB图像 RGB图像时指用RGB色彩空间显示的图像BGR图像是指使用BGR色彩空间显示的图像RGB色彩空间和 BGR色彩空间的区别是图像在RGB色彩空间中的通道顺序是R-G-B在BGR的色彩空间中的通道顺序是 B-G-R 2、修改像素的BGR值 对于RGB/BGR图像当每个像素的R、G、B这3个值相等时就可以得到灰度图像。其中。 RGB0BGR0为纯黑色RGB255BGR255为纯白色 import cv2image cv2.imread(E:/images/2.png) cv2.imshow(2,image)for i in range(241,292):for j in range(168,219):image[i,j] [255,255,255]cv2.imshow(3,image) cv2.waitKey() cv2.destroyWindow() 二、色彩空间 1、GRAY色彩空间 GRAY色彩空间通常指的是灰度图像灰度图像是一种每个像素都是从黑到白被处理为256个灰度级别的单 色图像。这256个灰度级别分别用区间[0,255]中的数值表示。其中“0”表示纯黑色“255”表示纯白色0~255之间 的数值表示不同的亮度即色彩的深浅程度的深灰色或浅灰色。因此一幅灰度图像能够展示丰富的细节信息。 从RGB/BGR色彩空间转换到GRAY色彩空间 dst cv2.cvtColorsrccodedst转换后的图像src转换前的初始图像code色彩空间转换码 色彩空间转换码含义cv2.COLOR_BGR2GRAY从BGR色彩空间转换到GRAY色彩空间cv2.COLOR_RGB2GRAY从RGB色彩空间转换到GRAY色彩空间 import cv2image cv2.imread(E:/images/2.png) cv2.imshow(2.1,image)#将图像2.png从BGR色彩空间转换到GRAY色彩空间 gray_image cv2.cvtColor(image,cv2.COLOR_BGR2GRAY) cv2.imshow(GRAY,gray_image) cv2.waitKey() cv2.destroyWindow() 2、HSV色彩空间 HSV色彩空间是基于色调、饱和度和亮度而言的。其中色调H是指光的颜色。在OpenCV中色调在区间【0,180】内取值。例如代表红色、黄色、绿色和蓝色的色调值分别为0、30、60和120 从RGB/BGR色彩空间转换到HSV色彩空间 色彩空间转换码含义cv2.COLOR_BGR2HSV从BGR色彩空间转换到HSV色彩空间cv2.COLOR_RGB2HSV从RGB色彩空间转换到HSV色彩空间 import cv2image cv2.imread(E:/images/2.png) cv2.imshow(2.1,image)#将图像2.png从BGR色彩空间转换到GRAY色彩空间 hsv_image cv2.cvtColor(image,cv2.COLOR_BGR2HSV) cv2.imshow(HSV,hsv_image) cv2.waitKey() cv2.destroyWindow() 三、通道 1、拆分通道 拆分一幅BGR图像中的通道 b,g,r cv2.splitbgr_image 参数说明bB通道图像gG通道图像r R通道图像bgr_image一幅BGR图像 import cv2bgr_image cv2.imread(E:/images/2.png) cv2.imshow(2.1,bgr_image)b,g,r cv2.split(bgr_image) cv2.imshow(B,b) cv2.imshow(G,g) cv2.imshow(R,r)cv2.waitKey() cv2.destroyWindow() 拆分一幅HSV图像中的通道 h,s,v cv2.splithsv_image 参数说明hH通道图像sS通道图像vV通道图像hsv_image一幅HSV图像 import cv2bgr_image cv2.imread(E:/images/avatar.png) cv2.imshow(2.1,bgr_image)#把图2.1从BGR色彩空间转换到HSV色彩空间 hsv_image cv2.cvtColor(bgr_image,cv2.COLOR_BGR2HSV) h,s,v cv2.split(hsv_image) cv2.imshow(H,h) cv2.imshow(S,s) cv2.imshow(V,v)cv2.waitKey() cv2.destroyWindow() 2、合并通道 合并通道是拆分通道的逆操作 合并B、G、R通道图像 bgr cv2.merge[bgr] 参数说明bgr按B-G-R的顺序合并通道后得到的图像rR通道图像gG通道图像bB通道图像注意合并通道的顺序不同图像的显示效果也不同 import cv2bgr_image cv2.imread(E:/images/avatar.png) cv2.imshow(2.1,bgr_image)b,g,r cv2.split(bgr_image) #拆分图2.1中的通道bgr cv2.merge([b,g,r]) #按B-G-R的顺序合并通道 cv2.imshow(BGR,bgr)rgb cv2.merge([r,g,b]) #按R-G-B的顺序合并通道 cv2.imshow(RGB,rgb)cv2.waitKey() cv2.destroyWindow() 合并H、S、V通道图像 hsv cv2.merge[hsv] 参数说明hsv合并H通道图像、S通道图像和V通道图像后得到的图像hH通道图像sS通道图像vV通道图像 import cv2bgr_image cv2.imread(E:/images/avatar.png) cv2.imshow(avatar.png,bgr_image) #把图像avatar.png从RGB色彩空间转换到HSV色彩空间 hsv_image cv2.cvtColor(bgr_image,cv2.COLOR_BGR2HSV) h,s,v cv2.split(hsv_image) #拆分HSV图像中的通道 hsv cv2.merge([h,s,v]) #合并拆分后的通道图像 cv2.imshow(HSV,hsv) #显示合并通道的HSV图像cv2.waitKey() cv2.destroyWindow() 3、alpha通道 BGR色彩空间包含3个通道即B通道、G通道、R通道。OpenCV在这3个通道的基础上增加了一个A通道即alpha通道用于设置图像的透明度。alpha通道在区间【0,255】内取值其中0表示透明255表示不透明 import cv2bgr_image cv2.imread(E:/images/avatar.png) cv2.imshow(2.1,bgr_image)#把图像2.1从BGR色彩空间转换到BGRA色彩空间 bgra_image cv2.cvtColor(bgr_image,cv2.COLOR_BGR2BGRA) cv2.imshow(BGRA,bgra_image) #显示BGRA图像 r,g,b,a cv2.split(bgra_image) a[:,:] 172 bgra_172 cv2.merge([r,g,b,a]) a[:,:] 0 bgra_0 cv2.merge([r,g,b,a])cv2.imshow(A 172,bgra_172) cv2.imshow(A 0,bgra_0)cv2.waitKey() cv2.destroyWindow() 四、使用NumPy模块操作像素 1、NumPy概述 NumPy提供了一个高性能的数组对象可以轻松创建一维数组、二维数组和多维数组等大量实用方法帮助开发者轻松地进行数组计算。从而广泛的应用于数据分析、机器学习、图像处理和计算机图形学、数学任务等领域中 2、创建数组 numpy.arrayobjectdtypecopyordersubokndmin 参数说明object任何具有数组接口方法的对象dtype数据类型copy可选参数布尔型默认值为True则object对象被复制order元素在内存中的出现顺序subok布尔型。如果值为True则将传递子类ndmin指定生成数组的最小维数 创建一维和二维数组 import numpy as npn1 np.array([1,2,3]) #创建一个简单的一维数组 n2 np.array([0.1,0.2,0.3]) #创建一个包含小数的一维数组 n3 np.array([[1,2],[3,4]]) #创建一个简单的二维数组 创建浮点型数组 import numpy as nplist [1,2,3]#创建浮点型数组 n1 np.array(list,dtypenp.float_) print(n1) print(n1.dtype) print(type(n1[0])) 创建三维数组 import numpy as nplist [1,2,3] nd1 np.array(list,ndmin3) print(nd1) 3、操作数组 数组加、减、乘、除 import numpy as npn1 np.array([1,2]) n2 np.array([3,4])print(n1 n2) print(n1 - n2) print(n1 * n2) print(n1 / n2)//输出 [4 6] [-2 -2] [3 8] [0.33333333 0.5 ] 幂运算 import numpy as npn1 np.array([1,2]) n2 np.array([3,4])print(n1 ** n2)//输出[ 1 16] 比较运算 import numpy as npn1 np.array([1,2]) n2 np.array([3,4])print(n1 n2) print(n1 n2) print(n1 n2) print(n1 ! n2)//输出 [False False] [False False] [ True True] [ True True] 复制数组 import numpy as npn1 np.array([1,2]) n2 n1.copy()print(n1 n2) n2[0] 9 print(n1) print(n2) print(n1 n2)//输出 [ True True] [1 2] [9 2] [False True] 索引和切片 import numpy as npn1 np.array([1,2,3]) print(n1[0]) print(n1[1]) print(n1[0:2]) print(n1[1:]) print(n1[:2])//输出 1 2 [1 2] [2 3] [1 2] 4、创建图像 在OpenCV中黑白图像实际是一个二维数组彩色图像是一个三维数组。数组中每个元素就是图像对应位置的像素值。因此修改图像像素的操作实际就是修改数组的操作 注意数组索引、像素行列、像素坐标的关系如下数组行索引 像素所在行数 - 1 像素纵坐标数组列索引 像素所在列数 - 1 像素横坐标 创建纯黑色图像 import cv2 import numpy as npwidth 200 height 100#创建指定宽度、高度、像素值都为0的图像 img np.zeros((height,width),np.uint8) #用0填充数组 cv2.imshow(img,img)cv2.waitKey() cv2.destroyWindow() 创建纯白色图像 import cv2 import numpy as npwidth 200 height 100#创建指定宽度、高度、像素值都为1的图像 img np.ones((height,width),np.uint8)*255 #用1填充数组然后再乘以255 cv2.imshow(img,img)cv2.waitKey() cv2.destroyWindow() 在黑色图像内部绘制白色矩形 import cv2 import numpy as npwidth 200 height 100#创建指定宽度、高度、像素值都为0的图像 img np.zeros((height,width),np.uint8) #用0填充数组 # 图像纵坐标为25~75、横坐标为50~100之间的区域变为白色 img[25:75,50:100] 255 cv2.imshow(img,img)cv2.waitKey() cv2.destroyWindow() 创建彩色图像 import cv2 import numpy as npwidth 200 height 100#创建指定宽度、高度、像素值都为0的图像 img np.zeros((height,width,3),np.uint8) #用0填充数组 blue img.copy() blue[:,:,0] 255 green img.copy() green[:,:,1] 255 red img.copy() red[:,:,2] 255cv2.imshow(blue,blue) cv2.imshow(green,green) cv2.imshow(red,red)cv2.waitKey() cv2.destroyWindow() 5、图像拼接 水平拼接数组 array numpy.hstacktup 参数说明tup要拼接的数组元组 返回值说明array将参数元组中的数组水平拼接后生成的新数组 垂直拼接数组 array numpy.vstacktup 参数说明tup要拼接的数组元组 返回值说明array将参数元组中的数组垂直拼接后生成的新数组 拼接图像 import cv2 import numpy as npimg cv2.imread(E:/images/avatar.png)img_h np.hstack((img,img)) img_v np.vstack((img,img))cv2.imshow(img_h,img_h) cv2.imshow(img_v,img_v)cv2.waitKey() cv2.destroyWindow() 五、总结
http://www.w-s-a.com/news/537376/

相关文章:

  • 网站后台管理系统怎么进seo网络推广外包公司
  • 中山市 做网站网站建设如何上传文件
  • 网站呢建设公众号制作要求
  • 网站备案证明在自己电脑上做网站
  • 沈阳旅游团购网站建设怎么制作网站搜索窗口
  • 做化学合成的网站有哪些枣庄住房和城乡建设局网站
  • 天猫优惠券网站怎么做的网络连接
  • 保定网站建设多少钱公司网页网站建设+ppt模板下载
  • 用户上传商品网站用什么做建设跳转公积金网站
  • 买程序的网站上海市网站建设公司
  • 南通网站建设排名公司哪家好wordpress网站图片迁移
  • 河南省汝州文明建设门户网站博客网站建设源码
  • 单位建设网站的请示手机移动端网站案例
  • 国内做网站的企业网站结构有哪些类型
  • 南通网站建设制作公司苏州好的网站公司名称
  • 咸阳做网站开发公司哪家好珠海公司制作网站
  • 深圳网站建设好不好医疗网站前置审批
  • 做ic什么网站好安溪网站建设
  • 网站建设 慕课企业文化标语经典
  • 做短视频的网站都有哪些简约 时尚 高端 网站建设
  • 浦口区网站建设售后服务建设一个网站多少钱
  • 做个小网站大概多少钱广州h5网站
  • 360免费建站视频wordpress标签显示图片
  • 创建简易个人网站国外做网站被动收入
  • 轻定制网站建设网页培训哪个机构好
  • 青岛海诚互联做网站好吗计算机软件开发培训机构
  • 德钦网站建设如何在网站上做用工登记
  • 创意品牌网站云服务
  • 个人备案网站可以做商城展示如何制作网页二维码
  • 网站建设php教程视频百度seo 站长工具