树莓派4B学习笔记(8)—— OpenCV环境搭建和基本操作

一、OpenCV环境搭建

运行下面两条命令安装OpenCV。

sudo apt-get install libopencv-dev
sudo apt-get install python-opencv

然后输入下面指令,测试一下是否安装成功。

python
import cv2
cv2.__version__

若正常出现下图所示的版本号,则表示安装成功!
在这里插入图片描述
最后退出python环境,可以输入exit(),或者直接快捷键ctrl+D

二、照片灰度化

保存下面图片到桌面,修改文件名为xiaor.jpg
在这里插入图片描述

在桌面新建test.py文件,输入以下程序。(先给出程序,后面讲解各个函数的作用)

# -*- coding: utf-8 -*-
import numpy as np
import cv2

img = cv2.imread('xiaor.jpg',0)	#0:gray 灰度;1或者不写,是全彩的
#img = cv2.imread('xiaor.jpg')#全部信息

cv2.imshow('image',img)	#把读取到img内的图像数据显示到名为image的窗口中

k = cv2.waitKey(0)&0xFF	#等待按键
if k == 27:   #	wait for ESC
	cv2.destroyAllWindows()	
elif k == ord('s'):	#wait for KEY 's' to save and exit  
	cv2.imwrite('grayimage.jpg',img)
	cv2.destroyAllWindows()

在终端中输入:

cd Desktop/
python test.py

运行结果如下,按下键盘s键可以保存图片为grayimage.jpg并关闭窗口(程序中是这样写的)。

注意是在灰度图片窗口中按s,不是在终端输入s

在这里插入图片描述

三、函数简介

1. 读取图像: cv2.imread()

使用函数 cv2.imread() 读入图像。

【参数1】图像名字(图像和程序在同一文件夹下) 或 路径+名字(图像和路径不在同一文件夹下)
【参数2】告诉函数应该如何读取这幅图片。

参数2的另一些取值:
cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道,可用1作为实参替代。
cv2.IMREAD_GRAYSCALE:读入灰度图片,可用0作为实参替代。
cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通道,可用-1作为实参替代。

alpha通道,又称A通道,是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度复信息,定义透明、不透明和半透明区域,其中黑表示全透明,白表示不透明,灰表示半透明

需要注意的是:就算图像的路径是错的, OpenCV也不会提醒你的, 但是当你使用命令 print img 时得到的结果是 None。

2. 显示图像: cv2.imshow()

使用函数 cv2.imshow() 显示图像, 窗口会自动调整为图像大小。

【参数1】窗口名字
【参数2】图像名字

可以创建多个窗口, 只要你喜欢, 但是必须给他们不同的名字。

cv2.namedWindow():可以先创建一个窗口, 之后再加载图像。 这种情况下, 你可以决定窗口是否可以调整大小。

初始设定函数标签是 cv2.WINDOW_AUTOSIZE,但是如果你把标签改成 cv2.WINDOW_NORMAL, 你就可以调整窗口大小了。 当图像维度太大, 或者要添加轨迹条时, 调整窗口大小将会很有用。

3. 按键检测:cv2.waitKey()

【参数】等待时间(单位ms)

函数等待特定的几毫秒, 看是否有键盘输入。 特定的几毫秒之内, 如果按下任意键, 这个函数会返回按键的 ASCII 码值, 程序将会继续运行。 如果没有键盘输入, 返回值为 -1, 如果我们设置这个函数的参数为 0, 那它将会无限期的等待键盘输入。

4. 关闭窗口

cv2.destroyAllWindows() :无入参。可以轻易删除所有我们建立的窗口。

cv2.destroyWindow() :参数为你想删除的特定窗口名。

5. 保存图像:cv2.imwrite()

cv2.imwrite() 来保存一个图像。

【参数1】文件名
【参数2】要保存的图像的变量名。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在树莓4B上安装OpenCV,首先需要新文件夹并下载解压OpenCVOpenCV_contrib的文件。可以从以下链接下载OpenCVOpenCV_contrib的压缩包:https://opencv.org/opencv-4-1-1/ 和 https://github.com/opencv/opencv_contrib/releases/tag/4.1.1。将下载的opencv_contrib-4.1.1文件夹放在opencv-4.1.1文件夹中。使用以下命令解压下载的文件:cd opencv-4.1.1 #根据实际路径和文件名 unzip opencv-4.1.1.zip unzip opencv-4.1.1.zip。这样就成功下载并解压了OpenCVOpenCV_contrib的文件。 此外,也可以参考一篇介绍在Ubuntu 18.04上安装OpenCV 3.2.0的教程,该教程提供了详细的解决方法,对于想安装OpenCV的用户来说是一个很好的参考。 如果在树莓4B的Ubuntu 18.04上安装OpenCV时遇到缺少libjasper-dev的问题,可以使用以下命令安装libjasper-dev依赖包:sudo apt-get install libjaster-dev。 综上所述,在树莓4B上安装OpenCV的步骤包括新文件夹,下载并解压OpenCVOpenCV_contrib,以及根据需要安装相关依赖包。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [基于树莓4B Ubuntu18.04LTS 的OpenCV4.1.1 开发环境部署](https://blog.csdn.net/weixin_49818157/article/details/127861522)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Ubuntu18.04安装opencv 3.2.0的解决方法](https://download.csdn.net/download/weixin_38637983/12842575)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [树莓4B Ubuntu18.04安装OpenCv依赖包libjasper-dev出现unable to locate libjasper-dev的解决办法](https://blog.csdn.net/qq_45619513/article/details/115430221)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值