广告
返回顶部
首页 > 资讯 > 精选 >OpenCV基础操作中图片的读取与写出怎么进行
  • 660
分享到

OpenCV基础操作中图片的读取与写出怎么进行

2023-06-26 04:06:18 660人浏览 独家记忆
摘要

今天给大家介绍一下OpenCV基础操作中图片的读取与写出怎么进行。,文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。1、进行图片读取的函数是:cv2.imread

今天给大家介绍一下OpenCV基础操作中图片的读取与写出怎么进行。,文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。

1、进行图片读取的函数是:cv2.imread

        cv2.imread函数语法如下:

cv2.imread(filename,flag=1)

        cv2.imread函数的参数解释:

                filename:所要读取图片的相对地址(与文件中open函数的读取方式一致)

                flag:设置读取的格式,默认为1,表示按照BGR三通道的方式进行读取;如果为0,则以灰度图单通道的方式读取。

2、图片保存的函数cv2.imwrite:

          cv2.imwrite函数语法:

cv2.imwrite(filename,img)

                cv2.imwrite函数参数解释

                filename:要保存图片的名字,程序的相对地址。

                img:要保存的图片矩阵形式。

程序功能:将.py文件夹中的GBR格式图片转化成灰度图。 

 程序演示:

OpenCV基础操作中图片的读取与写出怎么进行

OpenCV基础操作中图片的读取与写出怎么进行

 程序代码:

import cv2import numpy as npImg=cv2.imread('1.jpg',0)cv2.imwrite('1.jpg',Img)

如果想要改变图片的格式,也可以在保存图片时,将.jpg改为.png

这样在程序运行结束后在.py文件中会发现一张与1.jpg同样的图片1.png。

OpenCV基础操作中图片的读取与写出怎么进行

import cv2import numpy as npImg=cv2.imread('1.jpg',0)cv2.imwrite('1.png',Img)

这无非有是一种很好的图片格式转化的方法。

3、图片的显示函数cv2.imshow

图片展示函数:cv2.imshow

函数cv2.imshow的语法:

cv2.imshow(name,img)

cv2.imshow函数的参数解释:

name:展示窗口的名字

img:图片的矩阵形式

图片延时函数cv2.waiTKEy

函数cv2.waitKey语法

cv2.waitKey(time)

cv2.waitKey函数参数解释:

time表示等待的时间,单位为毫秒。

这个函数可以这样理解,在time时间内,计算机会等待我们键盘上的命令,如果在time时间内程序没有等到按键指令,他会自动进入下一帧。因为这里是图片,没有下一帧,所以会自动关闭窗口。

这里需要注意的是,如果我们把time置为0,并不是等待0毫秒后进入下一帧,而是停止在当前帧,有按键才会进入下一帧,所以显示单张图片时,通常用

cv2.waitKey(0);

代码示例:

import cv2import numpy as npimg=cv2.imread('1.jpg',cv2.IMREAD_COLOR)cv2.imshow('image',img)#为了图片长久的保存在程序窗口中,再加一个延时函数cv2.waitKey(0);cv2.imwrite('ba_ck_.png',img)#如果使用了cv2.imshow函数,下面一定要跟着一个摧毁窗口的函数cv2.destroyAllwindows()

程序改进(1):

上面这个程序中,显示完图片后,按下键盘上任意键,图片都会关闭。如果我们向按下特定建关闭程序的话,可以通过一个if语句来判断。如果按的不是q键,就一直处于while循环中,知道我们按下q键。

import cv2import numpy as npimg=cv2.imread('1.jpg',cv2.IMREAD_COLOR)cv2.imshow('image',img)while 1:    if cv2.waitKey(0)==ord('q'):        break    else:        pass#continuecv2.imwrite('ba_ck_.png',img)#如果使用了cv2.imshow函数,下面一定要跟着一个摧毁窗口的函数cv2.destroyAllWindows()

程序改进(2):

上述程序中,在我们按下q退出显示之后,程序会自动保存,若果我们想按下q直接退出,按下s退出并保存,需要再加一个if条件语句。

import cv2import numpy as npimg=cv2.imread('1.jpg',cv2.IMREAD_COLOR)cv2.imshow('image',img)while 1:    if cv2.waitKey(0)==ord('q'):        break    if cv2.waitKey(0)==ord('s'):        cv2.imwrite('ba_ck_.png',img)        break#如果使用了cv2.imshow函数,下面一定要跟着一个摧毁窗口的函数cv2.destroyAllWindows()

附、OpenCV:读取图片总结

在敲这个代码的时候,犯了很多错误,一直以为是配置出了问题,然后一直在排查配置,结果是路径方式错误 ,,把 Mat img = imread("C:\\Users\\sq.fu\\Desktop\\pic.jpg"); 这句写成了  Mat img = imread("C:\\Users\\sq.fu\\Desktop pic.jpg"); ,还好最后找出来了

#include <iOStream>  #include <opencv2\core\core.hpp>  #include <opencv2\imgproc\imgproc.hpp>  #include <opencv2\highgui\highgui.hpp>    using namespace cv;    void main( )  {      Mat img = imread("C:\\Users\\sq.fu\\Desktop\\pic.jpg");  //  Mat img = imread("C:\\Users\\sq.fu\\Desktop\\pic.jpg");       namedWindow("test");     imshow("test",img);      waitKey(100);  }

OpenCV基础操作中图片的读取与写出怎么进行

以上就是OpenCV基础操作中图片的读取与写出怎么进行的全部内容了,更多与OpenCV基础操作中图片的读取与写出怎么进行相关的内容可以搜索编程网之前的文章或者浏览下面的文章进行学习哈!相信小编会给大家增添更多知识,希望大家能够支持一下编程网!

--结束END--

本文标题: OpenCV基础操作中图片的读取与写出怎么进行

本文链接: https://www.lsjlt.com/news/306706.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • OpenCV基础操作中图片的读取与写出怎么进行
    今天给大家介绍一下OpenCV基础操作中图片的读取与写出怎么进行。,文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。1、进行图片读取的函数是:cv2.imread...
    99+
    2023-06-26
  • OpenCV基础操作指南之图片的读取与写出
    目录1、进行图片读取的函数是:cv2.imread2、图片保存的函数cv2.imwrite:3、图片的显示函数cv2.imshow附、OpenCV:读取图片总结总结1、进行图片读取的...
    99+
    2022-11-12
  • Matlab中如何读取图片并进行简单的操作
    这篇文章主要介绍了Matlab中如何读取图片并进行简单的操作,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。01—Matlab的使用当我们打开软件的时候会看到如下的界面,图片中...
    99+
    2023-06-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作