
图像处理
文章平均质量分 73
工头阿乐
实践是检验真理的唯一标准。
展开
-
图像处理之Homography matrix(单应性矩阵)
单应性矩阵是投影几何中一个术语,本质上它是一个数学概念,但是在OpenCV中却是有几个函数与透视变换相关的函数,都用到了单应性矩阵的概念与知识。跟很多人一样,刚开始学习图像处理对单应性矩阵不是很了解,通过项目实践慢慢知道了一些这方面的知识和自己对它的理解,就跟大家分享一下。单应性矩阵概念这里说的单应性矩阵主要是指平面单应性矩阵,在三轴坐标中XYZ,Z=1这个有点类似于三维的齐次坐标。单应性矩阵主要用来解决两个问题,一是表述真实世界中一个平面与对应它图像的透视变换。原创 2025-04-03 11:35:04 · 426 阅读 · 0 评论 -
stb_image简单使用
stb_image 是一个非常轻量级的、单文件的图像加载库,用于加载和解码多种图像格式(如BMP、JPEG、PNG、GIF等)的图像数据。它由Sean T. Barrett开发,并以公共领域(Public Domain)许可发布,因此可以自由地用于商业和非商业项目stb_image 提供了简单易用的接口,使得在应用程序中加载图像变得非常方便。原创 2025-01-13 16:09:02 · 484 阅读 · 0 评论 -
Raw格式的图片理解、读取、转换、显示
MIPI raw就充分利用了这6个bit位,每5个字节存储4个像素值,如图1.1所示,每格代表两个bit位,前4个红色的格子存储的是第一个像素的高8位,接着4个黄色的格子存储的是第二个像素的高8位,接着4个绿色的格子存储的是第三个像素的高8位,接着4个蓝色的格子存储的第四个像素的高8位,接着1个蓝色的格子存储的是第4个像素的低2位,接着一个绿色的格子存储的是第3个像素的低2位,接着一个个黄色的格子存储的是第2个像素的低2位,最后一个红色的格子存储的是第1个像素的低2位。假设一个sensor的像素是8。原创 2024-12-24 15:43:37 · 2683 阅读 · 0 评论 -
RGB与YUV格式详解
在图像的世界里,一般使用RGB作为存储格式。而在视频的世界里,一般使用YUV作为压缩存储格式。有时候面试官会问:为什么视频使用YUV来压缩存储,而不用RGB?YUV与RGB有什么区别,两者如何转换的?常见的RGB格式有哪些,常见的YUV格式又有哪些?手机摄像头的预览格式是什么,如何转换为YUV420P的?我们带着这些问题,来揭开RGB与YUV格式的面纱。原创 2024-08-20 16:11:54 · 4644 阅读 · 1 评论 -
开源软件YUView的使用和编译
经常做音视频相关的开发都知道,经常需要查看yuv文件,rgb这类原始图片数据文件,所以非常需要一个好用的软件,而且支持ubuntu等linux系统的,这里极力推荐YUView这个开源的软件,有源码可以自己进行编译使用。原创 2024-08-20 14:20:14 · 982 阅读 · 0 评论 -
高效的PNG编码与解码库LodePNG
它提供了无损PNG图片的编码和解码功能,并以简单、高效和高度灵活的设计而受到开发者们的欢迎。总之,无论你是初次接触图像处理,还是正在寻找一个新的PNG库,LodePNG都值得一试。其简洁高效的设计和丰富的功能,无疑会为你的项目增添一份色彩。项目中的示例程序是很好的入门指南,可以帮助你快速理解如何进行PNG的读写和颜色转换等操作。嵌入式系统:对于内存有限或者计算能力有限的环境,LodePNG的简洁性和效率显得尤为重要。游戏开发:需要轻量级且高效的图像资源管理时,LodePNG是一个不错的选择。原创 2024-08-13 10:25:50 · 532 阅读 · 0 评论 -
YUV格式与RGB格式详解
像素格式描述了像素数据存储所用的格式,定义了像素在内存中的编码方式。RGB 和 YUV 为两种经常使用的像素格式。/ 1024 / 1024 = 2.63 MB 存储空间。RGB 和 RGBA 格式RGB 图像具有三个通道 R、G、B,分别对应红、绿、蓝三个分量,由三个分量的值决定颜色,一般也叫做 RGB24;RGBA 是 RGB 图像加一个通道 alpha,即透明度,于是共有四个分量共同控制颜色,一般也叫做 RGB32。原创 2024-06-14 17:02:54 · 1336 阅读 · 0 评论 -
CUDA效率优化之CUDA Graph的使用
GPU 架构的性能随着每一代的更新而不断提高。现代 GPU 每个操作(如kernel运行或内存复制)所花费的时间现在以微秒为单位。但是,将每个操作提交给 GPU 也会产生一些开销——也是微秒级的。实际的应用程序中经常要执行大量的 GPU 操作:典型模式涉及许多迭代(或时间步),每个步骤中有多个操作。如果这些操作中的每一个都单独提交到 GPU 启动并独立计算,那么提交启动开销汇总在一起可能导致明显的整体性能下降。CUDA Graphs 将整个计算流程定义为一个图而不是单个操作的列表。原创 2023-04-12 17:45:56 · 2314 阅读 · 0 评论 -
工业相机-黑白相机像素MONO格式排列解析
像素(Pixel):人眼直接感受到的图像位图(bitmap):通过记录每一个像素值来存储和表达的图像位深度:位图中每个像素点用多少个二进制位来表示bmp:Windows系统中标准的位图格式以上说的都是黑白相机的mono格式,对于彩色工业相机,其实也有黑白格式,但那个黑白格式严格意义上属于彩色相机格式转化得到的,并不是sensor直接取到的图,还是与真正黑白相机的mono格式有所区别。后面有时间会再整理下彩色相机的像素格式排列及格式转化。原创 2023-04-07 15:40:23 · 6017 阅读 · 1 评论 -
图像熵的计算公式和应用场景
图像熵(image entropy)是图像“繁忙”程度的估计值。图像熵表示为图像灰度级集合的比特平均数,单位比特/像素,也描述了图像信源的平均信息量。对于离散形式的二维图像,其信息熵的计算公式为:对于上式,其中,pi 为每一灰度级出现的概率。熵指的是体系的混乱的程度,对焦良好的图像的熵大于没有清晰对焦的图像,因此可以用熵作为一种对焦评价标准。熵越大,图像越清晰。原创 2023-04-07 15:23:25 · 3100 阅读 · 0 评论 -
如何解释仿射变换
如何通俗的解释仿射变换?简单来说,“仿射变换”就是:“线性变换”+“平移”。先看什么是线性变换?原创 2022-09-09 10:24:23 · 1062 阅读 · 0 评论 -
YUV图像格式转换: YUYV 转 NV12
首先确认YUYV与NV12 的采样格式, YUYV 属于YUV4:2:2采样, 而NV12属于YUV4:2:0采样。 采样方式如下图所示: 采样方式 实心圆表示Y分量, 空心圆表示一对U和V的分量。并且YUV图像中每一个Y分量,即表示一个像素点。 可以很明显地看出YUV422采样中两个像素点共用一对U和V的分量, 而YUV420采样中四个像素点共用一对U和V 的分量。有了这个概念,接下来的理解将十分轻松。两者在存储方式上的表现如下图所示: 存储方式对比 在文件大小上, YUYV:原创 2022-04-06 11:30:29 · 2568 阅读 · 0 评论