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

做网站seo优化的公司做宣传用什么网站好

做网站seo优化的公司,做宣传用什么网站好,来个黑黑的网站,90设计网站怎么绑定手机号大家好,欢迎大家学习OpenCV4.8 开发实战专栏,长期更新,不断分享源码。 专栏代码全部基于C 与Python双语演示,专栏答疑群 请联系微信 OpenCVXueTang_Asst 本文关键知识点: OpenCV中默认imread函数加载图像文件&#…

大家好,欢迎大家学习OpenCV4.8 开发实战专栏,长期更新,不断分享源码。

专栏代码全部基于C++ 与Python双语演示,专栏答疑群 请联系微信 OpenCVXueTang_Asst

本文关键知识点:

OpenCV中默认imread函数加载图像文件,加载进来的是三通道彩色图像,色彩空间是RGB色彩空间、通道顺序是BGR(蓝色、绿色、红色)、对于三通道的图像OpenCV中提供了两个API函数用以实现通道分离与合并。

  • split // 通道分类
  • merge // 通道合并

扩展一下:
在很多CNN的卷积神经网络中输入的图像一般会要求[h, w, ch]其中h是高度、w是指宽度、ch是指通道数数目、OpenCV DNN模块中关于图像分类的googlenet模型输入[224,224,3]表示的就是224x224大小的三通道的彩色图像输入。

更正一下代码里面的内容关于mixchannels的 Python版本用法,参考如下代码即可:

dst = np.zeros(src.shape, dtype=np.uint8)
print(src.shape)
print(dst.shape)
cv.mixChannels([src], [dst], fromTo=[2, 0, 1, 1, 0, 2])
cv.imshow("output4", dst)

解释:

  1. mixchannels使用前必须先分配好np图像对象
  2. 前两个参数是图像数组!

在图像处理领域,通道分离(split)与合并(merge)是两个基础且重要的操作,它们允许对图像的各个颜色通道进行单独处理或修改。以下是对这两个操作的详细解释:

通道分离(split)

通道分离是指将彩色图像分解成其组成的单个颜色通道。在大多数图像处理库中,如OpenCV,彩色图像通常表示为三个通道的集合:红色(R)、绿色(G)和蓝色(B),尽管在某些情况下也可能使用其他色彩空间(如HSV或YUV),但BGR是最常见的。

  • 功能:使用split函数可以将彩色图像分成R、G、B三个单通道图像,从而方便对这三个通道分别进行操作。
  • 示例:在OpenCV中,可以使用cv.split(src)函数来实现通道分离,其中src是需要分离通道的图像数组。分离后,会得到三个单独的数组,分别代表R、G、B三个通道。
  • 注意事项:通道分离是一个比较耗时的操作,因此应在真正需要时才使用。如果只需要修改多通道图像中的某个通道的值,可以考虑使用numpy等库直接操作数组,而不是进行通道分离。

通道合并(merge)

通道合并是指将分离后的单个颜色通道重新组合成一个彩色图像。这个过程是通道分离的逆操作。

  • 功能:使用merge函数可以将多个单通道图像合并成一个多通道图像。在OpenCV中,这通常用于将R、G、B三个通道重新组合成一个彩色图像。
  • 示例:在OpenCV中,可以使用cv.merge([b, g, r])函数来实现通道合并,其中bgr分别是代表蓝色、绿色和红色通道的数组。合并后,会得到一个新的彩色图像数组。
  • 应用场景:通道合并常用于图像处理中的多种场景,如图像增强、色彩校正、图像合成等。通过修改分离后的通道并重新合并,可以实现各种图像效果。
    在这里插入图片描述

总结

通道分离与合并是图像处理中的基础操作,它们允许对图像的各个颜色通道进行单独处理或修改。这些操作在图像增强、色彩校正、图像合成等领域具有广泛的应用价值。在使用这些操作时,需要注意它们的性能和资源消耗,并根据具体需求选择适当的处理方法。

演示代码

#include <opencv2/opencv.hpp>
#include <iostream>using namespace cv;
using namespace std;int main(int argc, const char *argv[])
{Mat src = imread("D:/vcprojects/images/flower.png");if (src.empty()) {printf("could not load image...\n");return -1;}namedWindow("input", WINDOW_AUTOSIZE);imshow("input", src);vector<Mat> mv;Mat dst1, dst2, dst3;// 蓝色通道为零split(src, mv);mv[0] = Scalar(0);merge(mv, dst1);imshow("output1", dst1);// 绿色通道为零split(src, mv);mv[1] = Scalar(0);merge(mv, dst2);imshow("output2", dst2);// 红色通道为零split(src, mv);mv[2] = Scalar(0);merge(mv, dst3);imshow("output3", dst3);waitKey(0);return 0;
}

python 代码演示

import cv2 as cvsrc = cv.imread("D:/vcprojects/images/flower.png")
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)# 蓝色通道为零
mv = cv.split(src)
mv[0][:, :] = 0
dst1 = cv.merge(mv)
cv.imshow("output1", dst1)# 绿色通道为零
mv = cv.split(src)
mv[1][:, :] = 0
dst2 = cv.merge(mv)
cv.imshow("output2", dst2)# 红色通道为零
mv = cv.split(src)
mv[2][:, :] = 0
dst3 = cv.merge(mv)
cv.imshow("output3", dst3)cv.mixChannels(src, dst3, [2, 0])
cv.imshow("output4", dst3)cv.waitKey(0)
cv.destroyAllWindows()

结束语

学习贵在坚持,学习OpenCV贵在每一天的代码练习,原理跟基本的函数解释,相关知识,后续更新边学边理解,搞技术永远要坚持做长期主义者!我们一起努力!!!

专栏答疑群 请联系微信 OpenCVXueTang_Asst

http://www.yingshimen.cn/news/575/

相关文章:

  • 关键词挖掘ppt福州seo顾问
  • p2p网站建设多少钱西安企业建站系统模板
  • 一起做网店网站济南网站建设内容设计
  • 网站备案网站类型查企业免费的网站
  • 想学网站建设开发微信小程序开通流程
  • 大连最好的做网站的公司装修公司网站asp源码
  • 阿里云备案增加网站wordpress性能承载量
  • 网站建设营销策划书WordPress问答插件路由
  • 网站安全建设工作总结情侣网站建设策划书
  • 无锡建设机械网站制作网站建设前言
  • 网站建设公司软件开新闻类网站设计
  • 白山做网站临沂品牌网站制作
  • 优购物官方网站手机版网站上怎么做艳丽的色
  • 平板电脑网站模板百度公司可以做网站么
  • 个人网站模板html判断网站做的好坏
  • 网站后台管理系统栏目位置网络营销推广方法包括有哪些?
  • 设计师 推荐 网站嘉兴在线 官网
  • 婚恋网站建设公司排名wordpress模板博客
  • 网站怎么做透明导航百度网盘怎么增大免费空间
  • 山西建设执业资格注册管理中心网站如何制作一个简单的网页链接
  • 昆山网站公司珠海企业网站建设服务
  • 深圳网站优化方法网站开发seo规范
  • 一个完整的工程项目流程长沙竞价优化
  • 上海网站建设caiyiduo什么网站能免费做简历
  • 湖南营销型网站建设 j磐石网络做外汇都看那些网站
  • 做众筹的网站服务器代理加盟
  • 网站自己的wordpress酒店模板
  • 网站seo问题诊断工具绵阳网站维护托管
  • 网站聚合页面公众号平台搭建
  • 长春网站提升排名书城网站建设项目定义