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

OpenCV Python——VSCode编写第一个OpenCV-Python程序 ,图像读取及翻转cv2.flip(上下、左右、上下左右一起翻转)

文章目录

  • 1 软件环境需求逻辑
  • 2 python环境、Opencv、VSCode 等安装、配置、测试教程
  • 3 VSCode 下编写opencv-python 详细教程
    • 3.1 创建项目文件 和 添加代码
    • 3.2 运行测试
  • 4 关于路径问题(VSCode默认路径)
    • 4.1 无法打开'102.jpg'图片路径
    • 4.2 问题分析分析
    • 4.3 解决问题
      • 4.3.1 给出图片的全路径
      • 4.3.2 基于根目录的相对路径
      • 4.3.3 修改VSCode的启动配置(指定工作目录为脚本.py所在目录)
  • 5 VSCode 其他常用设置

1 软件环境需求逻辑

  • ①python环境—— 下载安装Python 3.8.5,并配置环境变量、验证 ;(python环境是我们习惯的说法,更标准的说法叫做Python解释器);
  • ②python版本opencv库安装-——视觉库 opencv-python、 opencv-contrib-python;
  • ③IDE开发环境——安装VSCode,并且进行python配置及代码测试;
  • ④OpenCV代码测试——图像读取及翻转 代码示例;

为什选择VSCode?而不是Pycharm?
在这里插入图片描述

由于Pycharm是收费的,而且感觉用起来也不是很友好。

而VSCode 功能非常强大,如:虚拟环境、连接远程服务器、丰富的第三方插件。。。。

2 python环境、Opencv、VSCode 等安装、配置、测试教程

详细教程,图文并茂,每一步都有截图 :Python 3.8.5 下安装opencv 保姆级教程(python环境、opencv-python、opencv-contrib-python、VSCode等安装)

3 VSCode 下编写opencv-python 详细教程

3.1 创建项目文件 和 添加代码

我们在E盘新建一个Test_py文件夹,用于存放python 项目。
然后在VSCode界面打开这个文件夹。

在这里插入图片描述

会弹出下面界面,点击 “ 是,我信任此作者”。

在这里插入图片描述

添加 1.py文件
在这里插入图片描述
添加代码

import cv2
import numpy as npimg=cv2.imread("102.jpg")
img2=cv2.flip(img,0)
img3=cv2.flip(img,1)
img4=cv2.flip(img,-1)#显示
cv2.imshow("img",img)
cv2.imshow("img2",img2)
cv2.imshow("img3",img3)
cv2.imshow("img4",img4)key=cv2.waitKey(0)

在这里插入图片描述

3.2 运行测试

102.jpg图片放到 1.py文件相同的目录下
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

点击右上角三角运行
在这里插入图片描述

在这里插入图片描述

4 关于路径问题(VSCode默认路径)

4.1 无法打开’102.jpg’图片路径

现在将Test_py下面创建一个子文件夹 Test1
然后将1.py文件和102.jpg图片,移动到文件夹 Test1下面;
在这里插入图片描述

在这里插入图片描述

运行报错,无法打开’102.jpg’图片路径

[ WARN:0@0.046] global loadsave.cpp:275 cv::findDecoder imread_('102.jpg'): can't open/read file: check file path/integrity
Traceback (most recent call last):File "e:/Test_py/Test1/1.py", line 11, in <module>cv2.imshow("img",img)
cv2.error: OpenCV(4.12.0) D:\a\opencv-python\opencv-python\opencv\modules\highgui\src\window.cpp:973: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow'

4.2 问题分析分析

VSCode的默认工作目录‌:

当在VSCode中运行脚本时,默认工作目录可能是项目根目录(如E:\Test_py),而非脚本1.py所在目录(E:\Test_py\Test1)

img=cv2.imread(“102.jpg”)会尝试从工作目录E:\Test_py下查找文件,而非脚本1.py目录查找文件;

如图红框的文件目录,就是根目录,也就是VSCode的默认工作目录‌,在这个目录下当然是找不到102.jpg图片。

在这里插入图片描述

4.3 解决问题

4.3.1 给出图片的全路径

img=cv2.imread("E:\\Test_py\\Test1\\102.jpg")

4.3.2 基于根目录的相对路径

或者,基于根目录的相对路径

img=cv2.imread(".//Test1//102.jpg")

4.3.3 修改VSCode的启动配置(指定工作目录为脚本.py所在目录)

在VSCode的.vscode/launch.json中添加cwd配置:"cwd": "${fileDirname}",

{"version": "0.2.0","configurations": [{"name": "Python: Current File","type": "python","request": "launch","program": "${file}","cwd": "${fileDirname}",  // 关键设置:指定工作目录为脚本所在目录"console": "integratedTerminal"}]
}

5 VSCode 其他常用设置

VSCode 其他常用设置教程:

VSCode常用设置 及快捷键(放大/缩小字体、切换全屏、跳转指定行数、返回上一次位置、隐藏 /显示导航、注释代码)

VSCode不同窗口设置不同颜色

vscode 更换文件图标主题

VSCode跳转到指定的行数的快捷键

VSCode缩放代码区 字体大小(3种方法)

http://www.lryc.cn/news/621905.html

相关文章:

  • 【数据结构初阶】--排序(三):冒泡排序、快速排序
  • 有红帽认证证书可以0元置换华为openEuler-HCIA/HCIP认证
  • html抽奖功能
  • 【Twincat3】IO的SCAN 不可选中,SCAN中后扫描不到设备
  • langGraph--2--langServe+langGraph示例
  • 高等数学 8.3 平面及其方程
  • 开发Chrome/Edge插件基本流程
  • 使用 Serverless 架构快速构建基于 Iceberg 的事务型实时数据湖
  • redis6的多线程原理
  • 永磁同步电机控制 第一篇、认识电机
  • 图像生成适配器对比与选择:LoRA、ControlNet、T2I-Adapter 与 IP-Adapter
  • UE UDP通信
  • tun/tap 转发性能优化
  • 记录一下 StarRocks 点查的 Profile Metrics
  • C++结构体详解
  • 局部变量与全局变量的关系及应用
  • 【swift开发】SwiftUI概述 SwiftUI 全面解析:苹果生态的声明式 UI 革命
  • Unity_导航网格
  • 什么是国产化防爆平板?有哪些功能特点?应用在什么场景?
  • Unity与OpenGL中的材质系统详解
  • 【完整源码+数据集+部署教程】孔洞检测系统源码和数据集:改进yolo11-RetBlock
  • 汽车线束高压屏蔽层接地设计
  • uniapp小程序ocr-navigator身份证拍照上传替换方案
  • 解决在uniapp真机运行上i18n变量获取不到问题
  • USB ADB 简介
  • 为什么游戏会出现“卡顿”:`clock.tick()` v.s. `clock.get_fps()`
  • 【Cuda 编程思想】LinearQaunt-分块量化矩阵乘法计算过程
  • 25. 移动端-uni-app
  • 【URP】[光栅阶段][光栅插值]Unity透视校正插值
  • 2025年最新政策下,劳务报酬的增值税应该如何计算?