图像处理
文章平均质量分 73
RuiH.AI
学习ing
展开
-
Python OpenCV实践,相机标定
Python OpenCV实践,相机标定前言准备棋盘格标定相机图像去畸变前言本篇主要是使用python opencv标定相机内参和畸变参数的记录,主要参考opencv官方文档中的示例。本篇不会涉及标定原理。准备棋盘格一张棋盘格图(最好把棋盘格图粘贴到一块平板上,保证棋盘上的角点都在同一平面)。这里提供一个简单的棋盘格生成程序,在A4纸打印分辨率为96ppi时,棋盘每个格子的宽度为cube_cm:def generate_chessboard(cube_cm=2., pattern_size=(原创 2022-03-27 18:59:18 · 7217 阅读 · 1 评论 -
ffmpeg 图片转视频
ffmpeg 图片转视频前言ffmpeg图片转视频命令前言现在需要把文件里所有的图片按顺序转成视频,需要使用ffmpeg.ffmpeg图片转视频命令ffmpeg -f image2 -i path_to_img_dir/image_%d.jpg vid.mp4其中,image_%d.jpg表示文件夹内的有序图片,比如image_00.jpg,image_01.jpg...原创 2021-12-10 16:23:23 · 4783 阅读 · 0 评论 -
ffmpeg学习: 视频压缩
ffmpeg学习: 视频压缩前言ffmpeg压缩命令ffmpeg截取命令前言最近常做录屏演示,录屏的存储太大了,所以需要ffmpeg做视频压缩。ffmpeg压缩命令# 指定帧率ffmpeg -i myvid.mp4 -r 10 outvid.mp4# 指定码率ffmpeg -i myvid.mp4 -b:v 2000k outvid.mp4ffmpeg截取命令# -ss 截取开始 -t 截取多久ffmpeg -i myvid.mp4 -ss 00:00:01 -t 00:00:10 o原创 2021-09-16 21:33:58 · 418 阅读 · 0 评论 -
YOLOX、YOLOv5、Nanodet在PC与嵌入式板Atlas200DK上的推理速度测试
目录前言PC上的模型推理速度Atlas200DK推理测速结果前言Nanodet和YOLOv5都是我很喜欢的检测算法,Nanodet超轻量对嵌入式设备极其友好,u版yolo训练起来速度快效果好,功能强大前两天旷视开源了YOLOX,我看了一下算法大体和代码实现,总的来讲还是比较有新意,去掉了anchors,有点融合FCOS的意思,不过纸面上的mAP比yolov5的p6系列还是有一定差距的不过YOLOX代码写的真不错,比u版yolo简洁多了。以下测试均在python中完成PC上的模型推理速度mAP我原创 2021-07-27 21:04:53 · 12335 阅读 · 26 评论 -
/usr/bin/env python报错, cv2.dnn.nms报错
这两天在atlas200dk上部署目标检测算法,踩的坑多到破防记录一下碰到的两个错误错误一、运行.py时报错 /usr/bin/env: ‘python\r’: No such file or directory我在部署代码时,先在windows系统下把代码写好(有IDE写的快),然后复制到ubuntu里,然后就会报这个错误。原因在windows下,用连续的’\r’和’\n’两个字符进行换行。在Linux下,用’\n’进行换行。因此在Windows下编写的#!/usr/bin/env pyt原创 2021-07-25 23:04:08 · 2685 阅读 · 4 评论 -
ROS学习 三、ROS中部署Nanodet
目录前言ROS中目标检测模型的部署(rospy)demo测试ROS python模型部署后记前言Nanodet是我十分喜爱的一个超轻量目标检测算法,以FCOS为主体框架+GFL损失函数来训练模型。Nanodetd的性能要求对嵌入式设备极其友好,只要能装opencv就能无压力部署。于是我把nanodet移植到了ROS中。现成的源码在这里 ros-nanodetROS中目标检测模型的部署(rospy)许多深度学习算法都是用python来写的,转成C++坑比较多,因此我选择先在rospy验证模型在ROS原创 2021-07-24 12:12:11 · 3534 阅读 · 7 评论 -
Python OpenCV学习总结Day 3.1 图像处理(上篇) 颜色处理与二值化,滤波去噪,形态学腐蚀膨胀,边缘检测
目录前言Day3.1 OpenCV图像处理核心技术(上篇)颜色处理与二值化颜色空间转换阈值二值化自适应阈值二值化滤波去噪均值滤波中值滤波高斯滤波双边滤波形态学操作腐蚀膨胀开运算与闭运算边缘检测Sobel算子Roberts算子Prewitt算子Canny算子Laplace算子轮廓检测霍夫直线和圆检测结语前言按照OpenCV官方doc顺序来进行学习回忆和总结,本次的内容是opencv中的图像处理核心技术(imgproc.hpp),包括颜色处理与二值化滤波去噪形态学操作边缘与轮廓检测霍夫直线和圆检原创 2021-07-07 20:39:30 · 3578 阅读 · 0 评论 -
python opencv实践 图像去畸变
目录前言镜头成像畸变原因去畸变方法python去畸变输入代码结果前言由于相机的镜头并不完全理想,成像时会产生线条扭曲、失真等。对双目图像、鸟瞰图等进行处理时,首先要矫正去畸变。镜头成像畸变原因相机的镜头前有一块透镜,由于透镜的形状,当光线穿过透镜时,靠近光轴的光线折射比远离光轴的折射要小,就会产生径向畸变,此时真实世界中的直线在图像中会被弯曲,往外弯曲是枕形畸变,如下图(b),往里弯曲是桶形畸变,如下图(c)去畸变方法python去畸变输入一张工厂灰度图,由于畸变导致部分直线条明显被弯曲原创 2021-07-07 09:36:38 · 11693 阅读 · 2 评论 -
Python OpenCV实践-微信开源二维码检测算法对比
目录前言1.透射变换2.opencv自带二维码检测器QRCodeDetector()3.微信开源二维码检测器wechat_qrcode_WeChatQRCode()对比总结前言前些日子微信在opencv4.5中开源了一个二维码检测和识别的代码和模型,据说检测速度快鲁棒性好,因此拿来与opencv自带的二维码检测器进行对比测试用图如下:1.透射变换有时候没法正对二维码来扫码,本文通过透射变换来模拟这种场景透射变换是指将图像从视平面投射到另一个平面,需要通过变换前后平面上对应的四组点计算变换矩阵,原创 2021-07-01 11:54:32 · 5678 阅读 · 2 评论 -
Python OpenCV学习总结Day 2 像素访问,通道分离,边界填充,算术操作
Python OpenCV学习总结Day 2 像素访问,通道分离,边界填充,算术操作目录Python OpenCV学习总结Day 2 像素访问,通道分离,边界填充,算术操作前言Day2.OpenCV核心基础像素访问与修改图像属性访问ROI提取通道操作边界填充图像的算术操作与位操作图像加法图像减法图像乘法图像除法位操作运行计时结语前言按照OpenCV官方doc顺序来进行学习回忆和总结本次的内容是opencv中的常用核心操作(core.hpp),包括像素访问图像属性访问ROI提取通道操作图像原创 2021-06-29 23:33:42 · 2653 阅读 · 1 评论 -
视觉SLAM十四讲学习1 环境配置
视觉SLAM十四讲学习1 环境配置目录视觉SLAM十四讲学习1 环境配置前言一、系统设置二、SLAM常用包配置1.Debian常用软件包2.OpenCV和opencv_contrib包3.SLAM代码与第三方包Kdevelop安装Eigen安装Sophus安装Pangolin安装PCL安装Ceres-solver安装g2o安装Meshlab安装Octomap安装DBoW3安装总结前言这里将记录一些我学习SLAM十四讲的总结心得以及实际操作,包括数学公式和理论推导,以及代码调试等,会持续不定时的更新原创 2021-06-28 22:39:15 · 4328 阅读 · 3 评论 -
Python OpenCV学习总结Day 1 图像视频读写、线、圆、矩形、鼠标事件
Python OpenCV学习总结Day 1前言Day1.OpenCV操作基础读取/保存图片读取/保存视频画点、线、圆、矩形、文字等鼠标事件以及滑动条设置前言硕士期间做了近两年的图像处理与深度学习相关的内容,但在实际应用中仍然能遇到新问题,学习新知识,因此在这开一个坑,总结一下图像处理开源库OpenCV(Python)中常见的函数、原理和算法,也会同时记录新碰到的问题与解决方法,巩固一下图像基础。按照OpenCV官方doc顺序来进行学习回忆和总结~Day1.OpenCV操作基础读取/保存图片图片原创 2021-06-28 12:33:18 · 2348 阅读 · 0 评论