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

电子商务网站开发总结国外网站域名

电子商务网站开发总结,国外网站域名,网页游戏在线,邯郸外贸网站建设公司一.图像色彩空间转换 1.1 HSV颜色空间 HSV颜色空间使用色调#xff08;Hue#xff09;、饱和度#xff08;Saturation#xff09;和亮度#xff08;Value#xff09;三个参数来表示颜色 一般对颜色空间的图像进行有效处理都是在HSV空间进行的#xff0c;然后对于基本…一.图像色彩空间转换 1.1 HSV颜色空间 HSV颜色空间使用色调Hue、饱和度Saturation和亮度Value三个参数来表示颜色 一般对颜色空间的图像进行有效处理都是在HSV空间进行的然后对于基本色中对应的HSV分量需要给定一个严格的范围下面是通过实验计算的模糊范围准确的范围在网上都没有给出。 H: 0— 180 S: 0— 255 V: 0— 255 也就是可以通过颜色的范围来提取图像中的一种或多种颜色。 HSV的好处 - 符合人类对颜色的感知方式人类对颜色的感知是基于色调、饱和度和亮度三个维度的而HSV颜色空间恰好就是通过这三个维度来描述颜色的。因此使用HSV空间处理图像可以更直观地调整颜色和进行色彩平衡等操作更符合人类的感知习惯。 - 颜色调整更加直观例如在RGB空间中要调整红色系的颜色需要同时调整R、G、B三个通道的数值而在HSV空间中只需要调整色调和饱和度即可。 - 降维处理有利于计算在图像处理中降维处理可以减少计算的复杂性和计算量。HSV颜色空间相对于RGB颜色空间减少了两个维度红、绿、蓝 1.2 颜色空间转换 cv2.cvtColor(img,code) code指定转换的类型可以使用预定义的转换代码。 - cv2.COLOR_RGB2GRAY 表示从RGB到灰度图像的转换 - cv2.COLOR_BGR2HSV 从RGB到HSV的转换 二.灰度化 彩色图是由R、G、B三个通道组成而灰度图只有一个通道。 灰度图像与黑白图像不同在计算机图像领域中黑白图像只有黑色与白色两种颜色但是灰度图像的取值可以是0~255不过只有一个通道。这样可以有256级灰度 # 在读取时也可以直接将其转化为灰度图 import cv2 as cvimg cv.imread(../images/flower.png, cv.IMREAD_GRAYSCALE) cv.imshow(Gray Image, img) cv.waitKey(0) cv.destroyAllWindows() 2.1 最大值法 从R、G、B三个通道的值中选出最大的一个并将其作为灰度图像中对应位置的像素值. 2.2 平均值法 将R、G、B三个通道的像素值全部加起来然后再除以三。 2.3 加权均值法最常用且内置 按照一定的权重去乘以每个通道的像素值并将其相加得到最后的值就是灰度图像中对应位置的像素值。权重的比例为 R乘以0.299G乘以0.587B乘以0.114这是经过大量实验得到的一个权重比例也是一个比较常用的权重比例 import cv2 as cvimg cv.imread(../images/flower.png) flower cv.resize(img,(200, 200))gray cv.cvtColor(flower, cv.COLOR_BGR2GRAY)cv.imshow(Original, flower) cv.imshow(Gray, gray) cv.waitKey(0) cv.destroyAllWindows() 三. 二值化处理 二值图像的二维矩阵仅由两个值构成也就是灰度图像的取值范围变了只有01 - 其操作的图像必须是灰度图 二值化处理函数 _,binary cv2.threshold(img,thresh,maxval,type) - img输入图像要进行二值化处理的灰度图。 - thresh设定的阈值。 - maxval当像素值大于(或小于取决于阈值类型)thresh时该像素被赋予的值。 - type阈值处理的类型。 - 返回值 - 第一个值通常用下划线表示计算出的阈值若使用自适应阈值法会根据算法自动计算出这个值。 - 第二个值binary二值化后的图像矩阵。与输入图像尺寸相同。 3.1 阈值法 THRESH_BINARY 设置一个阈值将灰度图中的每一个像素值与该阈值进行比较小于等于阈值的像素就被设置为0通常代表背景大于阈值的像素就被设置为maxval(通常为255) import cv2 as cvimg cv.imread(../images/flower.png) flower cv.resize(img,(200, 200))# 获得灰度图 gray cv.cvtColor(flower, cv.COLOR_BGR2GRAY)# 使用阈值法二值化 _,binary cv.threshold(gray, 127, 255, cv.THRESH_BINARY)cv.imshow(flower, gray) cv.imshow(binary, binary) cv.waitKey(0) cv.destroyAllWindows() 3.2 反阈值法 THRESH_BINARY_INV 与阈值法相反 import cv2 as cvimg cv.imread(../images/flower.png) flower cv.resize(img,(200, 200))# 获得灰度图 gray cv.cvtColor(flower, cv.COLOR_BGR2GRAY)# 使用反阈值法二值化 _,binary cv.threshold(gray, 127, 255, cv.THRESH_BINARY_INV)cv.imshow(flower, gray) cv.imshow(binary, binary) cv.waitKey(0) cv.destroyAllWindows() 3.3 截断阈值法 THRESH_TRUNC 所有像素与阈值进行比较像素值大于阈值的部分将会被修改为阈值小于等于阈值的部分不变 import cv2 as cvimg cv.imread(../images/flower.png) flower cv.resize(img,(200, 200))# 获得灰度图 gray cv.cvtColor(flower, cv.COLOR_BGR2GRAY)# 使用截断阈值法二值化 # 可以看到我们依然给了maxval但是实际上这个maxval没有起作用但是还是要写不然会报错 _,binary cv.threshold(gray, 127, 255, cv.THRESH_TRUNC)cv.imshow(flower, gray) cv.imshow(binary, binary) cv.waitKey(0) cv.destroyAllWindows() 3.4 低阈值零处理 THRESH_TOZERO 像素值小于等于阈值的部分被置为0,大于阈值的部分不变。 import cv2 as cvimg cv.imread(../images/flower.png) flower cv.resize(img,(200, 200))# 获得灰度图 gray cv.cvtColor(flower, cv.COLOR_BGR2GRAY)# 使用低阈值零处理二值化_,binary cv.threshold(gray, 127, 255, cv.THRESH_TOZERO)cv.imshow(flower, gray) cv.imshow(binary, binary) cv.waitKey(0) cv.destroyAllWindows() 3.5 超阈值零处理 THRESH_TOZERO_INV 像素值大于阈值的部分置为0像素值小于等于阈值的部分不变。 import cv2 as cvimg cv.imread(../images/flower.png) flower cv.resize(img,(200, 200))# 获得灰度图 gray cv.cvtColor(flower, cv.COLOR_BGR2GRAY)# 使用超阈值零处理二值化 _,binary cv.threshold(gray, 127, 255, cv.THRESH_TOZERO_INV)cv.imshow(flower, gray) cv.imshow(binary, binary) cv.waitKey(0) cv.destroyAllWindows() 3.6 OTSU阈值法 cv2.THRESH_OTS cv2.THRESH_OTS 并不是一个有效的阈值类型或标,它其实是用来计算合适阈值的方法通常与 THRESH_BINARY 或 THRESH_BINARY_INV 结合使用 OTSU算法是通过一个值将这张图分前景和背景 也就是灰度图中小于这个值的是一类大于这个值的是一类。例如如果你设置阈值为128则所有大于128的像素点可以被视作前景而小于等于128的像素点则被视为背景。 通过统计学方法最大类间方差来验证该值的合理性当根据该值进行分割时使用最大类间方差计算得到的值最大时该值就是二值化算法中所需要的阈值。通常该值是从灰度图中的最小值加1开始进行迭代计算直到灰度图中的最大像素值减1然后把得到的最大类间方差值进行比较。 import cv2 as cvimg cv.imread(../images/flower.png) flower cv.resize(img,(200, 200))# 获得灰度图 gray cv.cvtColor(flower, cv.COLOR_BGR2GRAY)# 使用OTSU阈值法二值化(默认是结合阈值法即THRESH_BINARY) _,binary cv.threshold(gray, 127, 255, cv.THRESH_OTSU) # 结合反阈值法 _,binary1 cv.threshold(gray, 0, 255, cv.THRESH_OTSUcv.THRESH_BINARY_INV)cv.imshow(flower, gray) cv.imshow(binary, binary) cv.imshow(binary1, binary1) cv.waitKey(0) cv.destroyAllWindows() 3.7 自适应二值化 其会对图像中的所有像素点计算其各自的阈值将图像划分为固定大小的块然后对每个块进行阈值处理。 cv2.adaptiveThreshold (image_np_gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 7, 10) 参数 maxval最大阈值一般为255 adaptiveMethod小区域阈值的计算方式 ADAPTIVE_THRESH_MEAN_C小区域内取均值 ADAPTIVE_THRESH_GAUSSIAN_C小区域内加权求和权重是个高斯核 thresholdType二值化方法只能使用THRESH_BINARY、THRESH_BINARY_INV也就是阈值法和反阈值法 blockSize选取的小区域的面积如7就是7\*7的小块。 C最终阈值等于小区域计算出的阈值再减去此值   自适应二值化更加适合用在明暗分布不均的图片因为图片的明暗不均导致图片上的每一小部分都要使用不同的阈值进行二值化处理。 3.7.1 取均值 从图片的左上角开始计算其邻域内的平均值用一个均值卷积核来实现将卷积核中心对准要阈值处理的像素然后计算这个卷积核内所有像素的平均值最后减去常数C得到该点阈值。 如图如果像取第一个元素卷积核有空缺处就按边缘填充的方式填充。 3.7.2 加权求和 对小区域内的像素进行加权求和得到新的阈值其权重值来自于高斯分布。与取均值的区别就是采用另一种规则的卷积核进行阈值选择函数中有着基本相同的参数。 3*3卷积核示例
http://www.zqtcl.cn/news/648067/

相关文章:

  • 谷歌下载seo是什么软件
  • 个人网站设计分析小程序在线制作平台
  • 网站开发 一般用什么语言vi视觉设计案例
  • 微信公众平台官方网官网seo优化找哪家做
  • 简约 网站模板网站目录链接怎么做
  • 国内地铁建设公司网站大连做网站外包
  • 微网站营销是什么网站图片上传代码
  • 外包公司做网站多少用vs做的网站怎么打开
  • 兴义城乡建设部网站企业服务器配置方案
  • 淘宝客网站根目录wordpress调用导航代码
  • 海外免费网站推广网站开发项目报告书
  • 大气的金融网站深圳专门做兼职的网站
  • 最新网站备案四平网站公司
  • 济宁恒德建设有限公司网站互联网营销师报名入口
  • 做灯饰的企业都会在哪些网站网站排名恢复
  • 互联网公司网站建设价格跨境支付互联互通
  • 杭州 高端网站 开发宜昌建设网站公司
  • 咋样做网站快照济南建设质量协会网站
  • 学校网站怎么建设兄弟网络(西安网站建设制作公司)
  • 长春市城乡建设局网站photoshop破解版下载免费中文版
  • 吕梁网站设计天津高端网页制作
  • 建一个网站做cpa联盟做淘客的网站都有哪几个
  • 中国建设银行网站对公业务wordpress 文章归档页面
  • 东软 网站群平台建设用个人电脑做网站服务器
  • 音乐播放网站开发pc端营销网站的关键字
  • 江门网站推广宿州官方网站建设
  • 企业网站建设策划书范文江苏高端网站建设
  • 网站开发 浏览器济宁网站建设服务
  • 整套网站建设网站开发中如何实现gps定位
  • 网站建设计划表福州自助建站