opencv

【Python】【OpenCV】【NumPy】图像和原始字节的转换

学习完基础的图像算法,开始接触OpenCV学习: 灰度图中,一个像素点上的灰度级需要一个字节(byte,2^8,8 bit)进行存储,此时的灰度图是二维的。而当我们需要转换为彩色图时,即三维,便会产生颜色通道(Channel),这个时候,一个像素点上的灰度级便会需要三个字节来进行存储。 可以借助笛卡 ......
字节 图像 Python OpenCV NumPy

[ORB/BEBLID] 利用OpenCV(C++)实现尺度不变性与角度不变性的特征找图算法

本文只发布于利用OpenCV实现尺度不变性与角度不变性的特征找图算法和知乎 一般来说,利用OpenCV实现找图功能,用的比较多的是模板匹配(matchTemplate)。笔者比较喜欢里面的NCC算法。但是模板有个很明显的短板,面对尺度改变,角度改变的目标就无能为力了。因此本文旨在做到模板匹配做不到的 ......
尺度 算法 角度 特征 BEBLID

Ubuntu Opencv安装脚本

##################################### # INSTALL OPENCV ON UBUNTU OR DEBIAN # ###################################### # | # SCRIPT OPTIONS | # | OPENCV_ ......
脚本 Ubuntu Opencv

OpenCV 卷积运算和卷积核

卷积运算和卷积核 图像运算中经常会碰到卷积运算这个讲法, 初看不知道具体含义, 其实非常简单, 工作原理如下: 首先提供一个小的矩阵, 一般是3*3, 或者是 5*5 或者是 7*7, 一般是方形矩阵, 维度为奇数, 这样中心点可以作为锚点, 矩阵中的元素取值多为很小的整数(或正或负或零), 该矩阵 ......
卷积 OpenCV

编译opencv: Linux编译opencv

opencv官网:https://opencv.org/releases/ github下载地址:https://github.com/opencv/opencv/releases mkdir build mkdir opencvbuild # 不编译java,不编译Python,指定安装位置 cd ......
opencv Linux

yolov8 opencv模型部署

使用opencv推理yolov8模型,仅依赖opencv,无需其他库,以yolov8s为例子,注意: 使用opencv4.8.0 !使用opencv4.8.0 !使用opencv4.8.0 !如果你使用别的版本,例如opencv4.5,可能会出现以下错误。 一、安装yolov8conda creat ......
模型 yolov8 opencv yolov

OpenCV编译(支持CUDA模块)

OpenCV编译(支持CUDA模块) 1、编译环境 windows 11 Visual Studio 2022 cmake2.8 OpenCV 4.8 2、前置条件 预安装CUDA Toolkit 11、Visual Studio 2022、cmake2.8 3、编译OpenCV 在github中找 ......
模块 OpenCV CUDA

opencv多目标跟踪算法报错与解决方案

背景: 在正确安装opencv-contrib-python 4.8.1.78后,在使用opencv进行多目标跟踪时,出现如下错误: 错误及解决方法 1、AttributeError: module 'cv2.cv2' has no attribute 'MultiTracker_create' 解 ......
算法 解决方案 目标 方案 opencv

Windows10+VSCode+cmake+opencv+ffmpeg+sdl2环境配置

一、概述 在Windows10上配置一个C++开发环境: 工具:VSCode 编译器:Mingw64(使用gcc进行编译) 构建工具:CMake 第三方库:集成OpenCV、FFmpeg、SDL2 二、操作步骤 1.安装mingw64并配置bin目录到环境变量 2.下载VSCode并安装 3.安装C ......
Windows 环境 VSCode opencv ffmpeg

opencv,matplotlib,PIL,base64数据转换

opencv,matplotlib,PIL,base64数据转换 目录opencv,matplotlib,PIL,base64数据转换opencvMatplotlibPIL相互转换opencv和MatplotlibMatplotlib和PILopencv和PILopencv和base64PIL和ba ......
matplotlib 数据 opencv base PIL

C#C++,opencv的dll中detach相关:关于调用dll后程序退出后进程仍然驻留系统列表的问题

我在c#中调用C++的dll,内部使用了线程并detach使其独立于主线程UI运行。 但后来发现程序关闭后,任务列表中的进场依然存在,即app并未实际正常退出。 这个问题有很多人碰到和争论,但都没有给出明确的答案。 这里提供一个理论解释和绝佳的调试排除方法: 根本原因:程序退出之前,系统(或程序员自 ......
dll 进程 程序 opencv detach

OpenCV透视变换-不对原图裁剪

前言: 最近在做透视变换,初次尝试是使用Pillow的transform方法,但是该方法在变换以后,由于需要提前设置变换后的图像尺寸,所以导致变换后的图像超出尺寸的部分会发生裁剪问题,这个现象不太适合我的目的,我的目的是对png图进行透视变换,然后贴在一张图上。 后来用了opencv中的方法,这个方 ......
原图 OpenCV

OpenCV 图片的读取、(并排)显示与保存

前言 C++和python两者的使用语法都是相同的 一、读取(imread和imdecode) 1、imread 由两个参数决定: imread(“图片的地址+名称”, 何种形式读取图片) 1 image = cv2.imread("C:/Opencv/lena.jpg", cv2.IMREAD_G ......
OpenCV 图片

opencv判断两张图片的相似度

opencv 判断两张图片的相似度 - 程序员大本营 (pianshen.com) Goal¶ Today it is common to have a digital video recording system at your disposal. Therefore, you will even ......
opencv 图片

OpenCV 直方图和归一化

直方图可以反映图片的整体统计信息, 使用函数 CalcHist() 实现. 但CalcHist() 统计出的数量信息和图像大小相关, 如果要剔除图像大小因素, 需要做归一化处理, 归一化处理后的信息, 反映出各个颜色值得占比情况, 这样更方便不同size图像做对比, 归一化的函数为 Normaliz ......
直方图 OpenCV

OpenCV 最容易传错参数的两组Mat构造函数

Mat构造函数中有两组函数传参特别容易传错, 分别是: public Mat(int rows, int cols, MatType type) public Mat(OpenCvSharp.Size size, MatType type) 稍不注意, 我们会认为下面两个mat尺寸相等, var m ......
函数 参数 OpenCV Mat

mac m1上java调用opencv

*. mac1 *. openjdk17 官网上没有编译好的mac m1上二进制库.需要自己下载源代码编译. https://opencv.org/releases/从这里下载源代码.如opencv-4.7.0.zip解压 把 opencv-4.7.0文件夹重命名为opencv 在opencv同级目 ......
opencv java mac

VisutalStudio配置Opencv

VisualStudio 2022配置Opencv 前言 求求了,让我多会点吧,上午把环境配好。我们多敲,让我再多会一些吧。这次来配下Opencv。 基本流程: 安装Visual Studio 下载opencv 配置变量 配置Visual Studio 测试运行 开始吧~ 一、跳过,自己装。 二、下 ......
VisutalStudio Opencv

OpenCV 在ImShow窗体上选择感兴趣的区域

窗体上选择感兴趣ROI区域 在计算机视觉处理中, 通常是针对图像中的一个特定区域进行处理, 有时候这个特定区域需要人来选择, OpenCV 也提供了窗口选择ROI机制. 窗体支持两种选择ROI区域的方法, 一个是单选, 一个是多选, 操作方法如下: 单选: 通过鼠标在屏幕上选择区域, 然后通过"空格 ......
上选 窗体 兴趣 区域 OpenCV

OpenCV 图像复制和图像区域读写

图像复制 共享数据, 使用 new Mat(srcMat, ...) 和 newMat=srcMat 生成新的Mat都和原Mat共享数据, 也就是说如果修改某一Mat,其他Mat也会随之改变 复制全新的Mat, 使用CopyTo() 和 Clone() 方法将生成一个全新的Mat, 新Mat和原Ma ......
图像 区域 OpenCV

OpenCV 输出文本

PutText() 输出文本 OpenCV5 将支持中文字符的输出, 当前版本OpenCV4原生不支持, 可以使用Contrib包+FreeType方式实现, 不过比较麻烦. 为了省事, 也可以通过将Mat转成bitmap,然后使用GDI方式输出中文字符. 示例代码 /// <summary> // ......
文本 OpenCV

OpenCV学习笔记day01

一、用于从磁盘中加载并在屏幕上显示一副图像 include "highgui.h" int main(int argc,char** argv){ IplImage* img = cvLoadImage(argv[1]);//IplImage结构体是常用的数据结构 cvNameWindows("Ex ......
笔记 OpenCV day 01

OpenCV 图像读写和显示

图像读取 ImRead() 函数可从文件中读取图像, 并生成一个Mat对象, ImRead() 函数支持绝大多数图像格式. 注意点: 读取后生成的Mat对象, 颜色空间为BGR, 第二参数为读取方式, 常用的方式有: . ImreadModes.Color: 彩色方式读取, 即使原图是4通道或者单通 ......
图像 OpenCV

QT + OPENCV + OpenCV_contrib + MINGW编译

参见 QT + OPENCV + OpenCV_contrib + MINGW编译_东方.既白的博客-CSDN博客 注意事项: 1. opencv 不要采用版本太高的,与mingw730_64编译器不兼容。太多错误 2. ......
OpenCV_contrib contrib OPENCV OpenCV MINGW

OpenCV 基础数据类型

常用基础数据类型 Rect/Rect2d/Rect2f 定义一个矩形区域, 带大小和位置 Size/Size2d/Size2f 定义一个矩形大小, 不带位置 Point/Point2d/Point3i 定义一个二维或三维的点坐标 Range/Rangef, 定义一个带有下上限的范围 Vec3b/Ve ......
类型 基础 数据 OpenCV

nginx coturn socat privoxy opencv 静态编译

文档说明: 只记录关键的地方; 发文时间: 2023-11-02 意义: linux 环境,免安装 下载后即可使用 环境: alpine:3.18 docker clang 状态: 完善中 体验编译结果 nginx 静态编译关键点 nginx use PCRE2 library on nginx 1 ......
静态 privoxy coturn opencv nginx

Opencv中goodFeaturesToTrack函数(Harris角点、Shi-Tomasi角点检测)算子速度的进一步优化(1920*1080测试图11ms处理完成)。

当处理实际的项目时,Opencv自带的角点检测算法goodFeaturesToTrack的速度就显得有点捉襟见肘了,我们在感谢CV提供算法思路的基础上,也应该沿着他的脚步,继续前进,把计算机的计算能力充分挖掘,实现更为高效的结果。 ......

“找不到opencv world481d dll”的解决方案

该问题可能的原因在于,运行程序时,OpenCV无法找到需要的dll。 解决方法为,找到安装目录下的\build\x64\vc16\bin目录,该目录下存放着许多运行时需要的文件。 将该目录添加进系统变量PATH中。 此时运行库能被程序正常加载,问题解决。 (如果已经打开了Visual Studio, ......
解决方案 方案 opencv world 481d

opencv wasm 试用

基于webassembly 的opencv nodejs 开发是一个很不错的体验,不用考虑node addon 的各种问题,而且性能也不错 以下是基于echamudi/opencv-wasm 构建的4.8.1 版本的试用,代码来自opencv-wasm 的示例demo 试用 pacakge.json ......
opencv wasm

opencv 4.8.1 wsam 构建&问题说明

opencv-wasm使用的opencv 版本是4.3 的,为了使用最新版本的,所以自己基于opencv-wasm 提供的脚本构建了一个,同时记录下一些 问题以及解决方法 构建脚本修改 原始使用的是4.3.0 版本的,直接修改分支就可以了 git clone --branch 4.8.1 --dep ......
opencv 问题 wsam amp