OpenCV基本操作——图像的基础操作

这篇具有很好参考价值的文章主要介绍了OpenCV基本操作——图像的基础操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

图像的IO操作

读取图像

cv2.imread()

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

import numpy as np
import cv2
img=cv2.imread('messi5.jpg',0)

显示图像

cv2.imshow()

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

cv2.imshow('image',img)
cv.waitKey(0)
plt.imshow(img[:,:,::-1])

保存图像

cv2.imwrite()

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

cv2.imwrite('messigray.png',img)

绘制几何图形

绘制直线

cv2.line(img,start,end,color,thickness)

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

绘制圆形

cv2.circle(img,centerpoint,r,color,thickness)

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

绘制矩形

cv2.rectangle(img,leftupper,rightdown,color,thickness)

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉
OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

向图像中添加文字

cv2.putText(img,text,station,font,fontsize,color,thickness,cv2.LINE_AA)

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

效果展示

import numpy as np
import cv2 as cv
import matplotlib.pyplot as plt

#1 创建图像
img=np.zeros((512,512,3),np.uint8)

#2 绘制图形
cv.line(img,(0,0),(511,511),(255,0,0),5)
cv.circle(img,(256,256),60,(0,0,255),-1)
cv.rectangle(img,(100,100),(400,400),(0,255,0),5)
cv.putText(img,'hello',(100,150),cv.FONT_HERSHEY_COMPLEX,5,(255,255,255),3)

#3 显示结果
plt.imshow(img[:,:,::-1])
plt.show()

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉
注:opencv图像坐标系中,左上角是原点,y轴向下,x轴向右,单位像素点

获取并修改图像中的像素点

import numpy as np
import cv2 as cv
import matplotlib.pyplot as plt

img=np.zeros((256,256,3),np.uint8)
img[100:200,100:200]=(0,0,255)
plt.imshow(img[:,:,::-1])

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉

获取图像的属性

img.shape
img.dtype
img.size

图像通道的拆分与合并

有时需要在B,G,R通道图像上单独工作。在这种情况下,需要将BGR图像分割成单个通道。或者在其他情况下,可能需要将这些单独的通道合并到BGR图像

b,g,r=cv.split(img)
img=cv.merge((b,g,r))

色彩空间的改变

opencv中有150多种颜色空间转换方法。最广泛使用的转换方法有两种,BGR<->Gray和BGR<->HSV

cv.cvtColor(input_image,flag)

OpenCV基本操作——图像的基础操作,tensorflow解决cv,opencv,人工智能,计算机视觉
注:行对应y轴,列对应x轴文章来源地址https://www.toymoban.com/news/detail-646175.html

到了这里,关于OpenCV基本操作——图像的基础操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • opencv学习(一)图像的基本操作

    cv2.IMREAD_COLOR:彩色图像 cv2.IMREAD_GRAYSCALE:灰度图像 cv2.imread()读取图片,当括号里面是 1 时,也就是替代了cv2.IMREAD_COLOR,得到 彩色图 。 cv2.imread()读取图片,当括号里面是 0 时,替代了cv2.IMREAD_GRAYSCALE,得到 灰度图 。 cv.inshow()函数为创建一个展示窗口,括号里面分别为 图片名字

    2024年02月05日
    浏览(121)
  • C# 使用OpenCV基本图像操作功能

    OpenCV是一个开源的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。C#在上位机开发中比较常用,有些项目需要在上位机上加入一些机器视觉相关的功能,在下面简单介绍了C#中使用OpenCV库的方法。 在管理NuGet包中,搜索OpenCvSharp4,安装

    2024年02月15日
    浏览(66)
  • Python Opencv实践 - 基本图像IO操作

       

    2024年02月14日
    浏览(61)
  • OpenCV基本图像处理操作(十)——图像特征harris角点

    角点 角点是图像中的一个特征点,指的是两条边缘交叉的点,这样的点在图像中通常表示一个显著的几角。在计算机视觉和图像处理中,角点是重要的特征,因为它们通常是图像中信息丰富的区域,可以用于图像分析、对象识别、3D建模等多种应用。 角点的识别可以帮助在进

    2024年04月23日
    浏览(64)
  • opencv 图像和视频处理的基本操作(python)

    原图:   1 图片的获取 主要通过cv2.imread(src)函数进行获取 2 图片的显示 3 ROI区域(图片截取) 4 图片的RGB通道划分 注意cv2.imread()获取的图片通过顺序为BGR,而非RGB,即B为0,G为1,R为2  保留R通道  保留G通道   保留B通道   5 RGB通道合成   6 边界填充 主要是通过cv2.copyMakeBo

    2023年04月21日
    浏览(67)
  • python学习-->opencv图像基本操作学习之灰度图转换

    好久没更新,趁今天要做核酸回不了宿舍,把今天的学习的opencv知识先记录一下! 运行环境是:pycharm 话不多说,献上代码再说: 首先我们先读取我们的图片进来! 跟着我们先尝试一下在打开我们的图片看看! 下面是实现的代码! 运行之后我的图片是这样的 我们可以看看图

    2024年02月08日
    浏览(60)
  • OpenCV学习(五)——图像基本操作(访问图像像素值、图像属性、感兴趣区域ROI和图像边框)

    访问像素值并修改 访问图像属性 设置感兴趣区域(ROI) 分割和合并图像 5.1 访问像素值并修改 访问像素值 修改像素值 简单访问每个像素值并修改比较缓慢,一般不使用。 Numpy数组方法 array.item() 和 array.itemset() 被认为更好,但是它们始终返回标量。 更好的像素访问和编辑方

    2024年02月06日
    浏览(90)
  • python数字图像处理基础(二)——图像基本操作、滑动条、鼠标操作

    import cv2 import numpy as np import matplotlib.pyplot as plt 图像读取 cv2.MREAD_COLOR: 彩色图像 或用1 cv2.IMREAD_GRAYSCALE:灰度图像 或用0 img = cv2.imread(‘cat.jpg’, cv2.IMREAD_GRAYSCALE) 等同于: img = cv2.imread(‘cat.jpg’, 0) 图像的显示,也可以创建多个窗口 cv2.imshow(‘img’, img) 等待时间,毫秒级,0表示

    2024年01月18日
    浏览(60)
  • 【OpenCV实现鼠标绘图,轨迹栏做调色板,图像的基本操作】

    在OpenCV中操作鼠标事件 函数:cv.setMouseCallback() 目的是在鼠标双击的地方画一个圆。首先,我们需要创建一个鼠标回调函数,该函数会在鼠标事件发生时执行。鼠标事件包括左键按下、左键松开、左键双击等等。通过获取每个鼠标事件的坐标(x, y),我们就能实现画圆的功能。

    2024年02月05日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包