今天第一次装了opencv,强大的图像处理库,于是我们先上安装过程

我是在conda环境下安装的,选择自己的python环境

conda activate pytorch

然后执行下面安装opencv,默认是最新版本。

pip install opencv-python
pip install opencv-contrib-python

安装完毕后
进行检查安装是否成功

(pytorch) C:\Users\j00431635>python
Python 3.8.5 (default, Sep  3 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'4.5.5'
>>>

能成功输出cv的版本即可成功。

然后下面我们基于已有的一些图像处理的知识做一些好玩的练练手,代码是抄袭的,但是每一个步骤我们需要看懂,每个个运算函数过程后面的数学原理和图像处理原理我们得搞明白,这样方便我们以后使用。

参考自:https://zhuanlan.zhihu.com/p/62703610

import cv2# cap = cv2.VideoCapture('D:/KK_Movies/kk 2022-01-23 18-27-04.mp4')
cap = cv2.VideoCapture('D:/KK_Movies/kk 2022-01-23 18-21-21.mp4')while True:ret, frame = cap.read()  # 获得图像的每一帧if frame is None:break# 图像灰度化img_gray = cv2.cvtColor(frame, cv2.COLOR_RGB2GRAY)# 高斯模糊img_blurred = cv2.GaussianBlur(img_gray, (3, 3), 0)# 图像二值化,采用自适应二值化img_threshold1 = cv2.adaptiveThreshold(img_blurred, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 5, 2)# 再次对二值化图像进行模糊img_threshold1_blurred = cv2.GaussianBlur(img_threshold1, (3, 3), 0)# 再次进行二值化_, img_threshold2 = cv2.threshold(img_threshold1_blurred, 200, 255, cv2.THRESH_BINARY)# 对图像进行开区间操作,其实就是膨胀和腐蚀操作kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(3, 3))  # 得到一个3*3的核# 因此当我们对一个图像先腐蚀再膨胀的时候,一些小的区块就会由于腐蚀而消失,再膨胀回来的时候大块区域的边线的宽度没有发生变化,这样就起到了消除小的噪点的效果。图像先腐蚀再膨胀的操作就叫做开运算。img_opening = cv2.bitwise_not(cv2.morphologyEx(cv2.bitwise_not(img_threshold2), cv2.MORPH_OPEN, kernel))# 再次对二值化图像进行模糊img_opening_blurred = cv2.GaussianBlur(img_opening, (3, 3), 0)# 最后展示代码cv2.imshow('img_opening_blurred', img_opening_blurred)# 按下q键就退出if cv2.waitKey(40) & 0xFF == ord('q'):break# 程序退出后,就毁灭窗口。
cv2.destroyAllWindows()

下面看下试验效果

【opencv】【第一玩】坤坤的篮球相关推荐

  1. C语言书写推箱子(坤坤版easyx库)

    C语言书写推箱子(坤坤版easyx库) 游戏效果的展示 运用的知识点(必看) 代码的讲解 游戏地图的实现 地图的初始化 地图图片的加载 地图图片的放置 人物和箱子的移动(重点) 游戏结束的判断 音乐的 ...

  2. C++函数 【鸡】 坤坤带你拿下

    大家共勉,一起拿下C++函数 一.函数的本质 函数其实很好理解,他就将一段经常使用的代码封装起来,减少重复. 就像我们用鸡代替我们的偶像,介绍不必要的重复!!! 二. 函数的定义 函数的定义一般主要有 ...

  3. 我们是ikun,为坤坤加油(简单的python反序列化、爬虫、越权、支付漏洞)

    题目来源:BUUCTF: CISCN2019 华北赛区 在某个深夜,身为ikun的文打开了BUUCTF,想看看有没有同为ikun的朋友,经过简单的搜索,发现竟然真的有ikun出的题目,看到这里身为ik ...

  4. 坤坤老师告诉同学们什么是观察者模式

    观察者模式 什么是观察者模式? 观察者模式即一个对象被多个对象所依赖,当被依赖的对象发生更新时,会自动通知所有依赖的对象. 例如:微博上的坤坤老师,当坤坤老师在微博发文章时,会自动通知所有的粉丝. 坤 ...

  5. Springboot毕设项目坤坤网上商城0573k(java+VUE+Mybatis+Maven+Mysql)

    Springboot毕设项目坤坤网上商城0573k(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBui ...

  6. 纯css实现坤坤经典动作-“铁山靠”

    背景 2023年2月16日,晴,今天没有工作,一直在掘金摸鱼,摸的我好累. 不行!我得找点有意义的事情做! 此时间,我发的一条沸点竟然有小黑子给我评论,\ 我看到之后气不打一处来,哥哥这么努力,还有这 ...

  7. 云开发坤坤鸡乐盒微信小程序源码

    云开发坤坤鸡乐盒微信小程序源码是由坤坤铁粉ikun们发布的一款专为ios系统的用户因无法下载软件版坤坤鸡乐盒而开发的小程序版, 源码下载:云开发坤坤鸡乐盒微信小程序源码-小程序文档类资源-CSDN下载

  8. 2022最新坤坤鸡乐盒微信小程序源码+云开发的

    正文: 云开发坤坤鸡乐盒微信小程序源码是由坤坤铁粉ikun们开发的. 因部分ios用户无法体验共举办,特地开发的小程序版鸡乐盒,听说作者也是5年的铁粉. 现在特别火,我也就不多作介绍了,点击就可以发出 ...

  9. 2022抖音直播云蹦迪软件程序坤坤版+文档教程

    正文: 之前分享过普通版的云蹦迪程序,今天给大家找了一下坤坤版的,坤坤是什么我就不必多说了,总之是跟之前的一个梗有关系,什么"鸡你太美". 这次我分享的除了坤坤版,普通版的云蹦迪我 ...

最新文章

  1. R语言图形用户界面数据挖掘包Rattle:加载UCI糖尿病数据集、并启动Rattle图形用户界面、数据集变量重命名,为数据集结果变量添加标签、数据划分(训练集、测试集、验证集)、随机数设置
  2. java语言的多态性及特点_Java中的方法的多态性有两种形式:( )和( )。_学小易找答案...
  3. linux c openssl rsa 加解密
  4. linux命令:java程序后台运行
  5. 巩膜(眼白)灰色原因
  6. 玲珑杯round11-E:萌萌哒的第五题
  7. Python创建空DataFrame及添加行数据
  8. 网上银行等电子支付平台的WEB登陆安全性简要分析
  9. VirtualBox虚拟机移到另外一台机器,需要在设置中禁用usb
  10. 《证券基金经营机构信息技术管理办法》要点简读
  11. 漏洞复现|Microsoft Office数学公式编辑器内存损坏漏洞(CVE-2017-11882 )
  12. 西北师范大学计算机科学与工程学院导师,西北师范大学计算机科学与工程学院导师简介-陈旺虎...
  13. eslint 修改standard规则
  14. PHP获取某一天前后任意时间
  15. phpoffice 编辑excel文档
  16. Zookeeper--四字命令
  17. HTTP Status 404错误解析
  18. Navicat导出pdf
  19. C#实现 -- 自动获取剪贴板的文字并且自动发送
  20. 计算机主板命名根据,华硕主板命名_技嘉主板命名_微星主板命名_快速看懂-太平洋电脑网...

热门文章

  1. html5canvas简单画图
  2. hive mysql元数据表说明
  3. [转]12个jquery插件
  4. StreamWriter、StreamReader 写读文件的两种方法
  5. 80年代出生人坦白十大尴尬事80一代全搜集
  6. 极度丝滑!CentOS/Unbuntu系统下快速设置虚拟内存,一行命令快速搞定!!!
  7. 谷歌浏览器实现直接打印效果
  8. Oracle触发器之表新增/修改的触发操作
  9. 容器编排技术 -- Kubernetes是什么?
  10. BGP——Peer Group(讲解+配置)