发布时间:2024-08-18 15:51:17 浏览量:242次
大部分的cv应用都需要处理图像输入和输出。比如,一个互动式cv应用可能通过摄像头作为输入源,并在窗口中显示输出。除了摄像头输入外,还可能涉及到图像文件、视频文件和原始字节的读取。举例来说,网络传输中的原始字节可能是应用中图形处理算法生成的。
不管是什么格式,每个像素都有一个值,但表示像素的方法各不相同。例如,可以通过使用二维NumPy数组简单地创建一个黑色的正方形图像:
OpenCV的imread函数支持各种静态图像文件格式。
#### 显示不同flags读取结果def cv2flags(filename): flags = [0, 1, 2, 3, 4] for flag in flags: m = cv2.imread(filename, flags=flag) cv2.namedWindow(f"flags={flag}", 0) cv2.imshow(f"flags={flag}", m) cv2.waitKey(0)filename = "./src/imgs/1.jpg"cv2flags(filename)
flags:图像的通道和色彩信息(默认值为1),即彩色图片。8位深度图片存储像素点的取值范围为0~255,1通道为灰度图,3通道为彩色图。
基本上,一个字节可以表示0到255的整数。对于实时图像应用来说,一个像素通常由每个通道的一个字节表示。
一个OpenCV图像是array类型的二维或三维数组。8位的灰度图像是一个含有字节值的二维数组。因此,我们可以通过坐标位置访问像素,比如修改横向600-800、纵向100-200为蓝色(BGR=(255,0,0)):
掌握了这些基础知识,我们就可以轻松读取图片或网络图片,方法十分简单:
### 核心点:获取图像字节数据def show_url_image(url_path): resp = request.urlopen(url_path) image = np.asarray(bytearray(resp.read()), dtype="uint8") ### 字节流数组 img = cv2.imdecode(image, 1) cv2.namedWindow("show_url_image", 0) cv2.imshow("show_url_image", img) cv2.waitKey(0)
视频读取:
OpenCV提供了VideoCapture类和Video Writer类来支持各种视频文件格式。在到达视频文件末尾之前,VideoCapture类通过read()函数获取新的帧,每帧是基于BGR格式的图像。
#### 视频读取def show_video(video_path): cap = cv2.VideoCapture(video_path) while (cap.isOpened()): ret, frame = cap.read() if ret == True: frame1 = process(frame, opt=0) ###增加视频处理功能 met = np.hstack((frame, frame1)) cv2.namedWindow("show_video", 0) cv2.imshow("show_video", met) if cv2.waitKey(1) & 0xFF == ord('q'): break else: break
waitKey()的参数为等待键盘触发的时间,单位为毫秒,其返回值是1(表示没有键被按下)或ASCII码,如27表示按下Esc键。另外,Python提供了一个标准函数ord(),该函数可以将字符转换为ASCII码。例如,输入ord('a)会返回97。
以上就是图片、视频读写的基本方法,是不是非常简单呢?
备注:免费获取源码,请评论区回复源码。
热门资讯
想将照片变成漫画效果?这篇文章分享了4个方法,包括Photoshop、聪明灵犀、VanceAI Toongineer、醒图,简单操作就能实现,快来尝试一下吧!
2. 华为手机神奇“AI修图”功能,一键消除衣服!原图变身大V领深V!
最近华为手机Pura70推出的“AI修图”功能引发热议,通过简单操作可以让照片中的人物换装。想了解更多这款神奇功能的使用方法吗?点击查看!
近年来,人工智能逐渐走入公众视野,其中的AI图像生成技术尤为引人注目。只需在特定软件中输入关键词描述语以及上传参考图就能智能高效生成符合要求的...
4. AI视频制作神器Viggle:让静态人物动起来,创意无限!
Viggle AI是一款免费制作视频的AI工具,能让静态人物图片动起来,快来了解Viggle AI的功能和优势吧!
5. Logo Diffusion——基于sd绘画模型的AI LOGO 生成器
这下LOGO设计彻底不用求人了。接下来详细演示一遍操作流程首先进入Logo D... 想学习更多AI技能,比如说关于怎么样利用AI来提高生产效率、还能做什么AI...
6. 零基础10分钟生成漫画,教大家如何用AI生成自己的漫画
接下来,我将亲自引导你,使用AI工具,创作一本既有趣又能带来盈利的漫画。我们将一起探索如何利用这个工具,发挥你的创意,制作出令人惊叹的漫画作品。让...
以下是一些免费的AI视频制作网站或工具,帮助您制作各种类型的视频。 1. Lumen5:Lumen5是一个基于AI的视频制作工具,可将文本转换为视频。 用户可以使...
8. 一款免费无限制的AI视频生成工具火了!国内无障碍访问!附教程
人人都可以动手制作AI视频! 打开网址https://pixverse.ai/,用邮箱注册后,点击右上角Create,就可以开始创作了。 PixVerse目前有文案生成视频,和图片生...
9. AI显卡绘画排行榜:4090无悬念,最具性价比出人意料
在AI绘图领域,Stable Diffusion的显卡绘图性能备受关注。本文整理了Stable Diffusion显卡的硬件要求和性能表现,以及2023年3月显卡AI绘图效率排行榜和性价比排行榜。欢迎查看最新的AI显卡算力排行榜。
就能快速生成一幅极具艺术效果的作品,让现实中不懂绘画的人也能参与其中创作!真的超赞哒~趣趣分享几款超厉害的AI绘画软件,提供详细操作!有需要的快来...
同学您好!