视频图像处理
文章平均质量分 76
视频图像处理
优惠券已抵扣
余额抵扣
还需支付
¥9.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
毛毛虫的爹
这个作者很懒,什么都没留下…
展开
-
像素格式转换
使用ffmpeg的swscale_scale函数可以实现像素格式转换,具体代码如下:#include <libavcodec/avcodec.h>#include <libswscale/swscale.h>int main(){ // 初始化转换器 struct SwsContext *sws_ctx = sws_getContext(width, height, AV_PIX_FMT_YUYV422, width, height, AV_PIX原创 2024-01-08 08:43:28 · 858 阅读 · 0 评论 -
win10+s2019 ZBar库64位编译及中文解码
Zbar源码是不支持中文解码的,要实现中文解码需要修改源码重新编译。提醒:备份是个好习惯。要修改的文件是zbar/qrcode/qrdectxt.c。61行,将3种解码方式修改如下。 latin1_cd = iconv_open("GBK", "UTF-8"); sjis_cd = iconv_open("GB2312", "UTF-8"); utf8_cd = iconv_open("UTF-8", "UTF-8"); 具体解码类型可以根据自己需求更改。之后打开.原创 2021-02-05 19:27:50 · 957 阅读 · 0 评论 -
VS2019(win10 64):配置opencv4.5.1教程
OpenCV配置步骤1、下载OpenCV,官网为 opencv.org,我使用的是OpenCV4.1.02、安装opencv,建议选择其他盘符,我的安装目录为:D:\Ins_Develop\opencv4.x3、将opencv添加到环境变量,在path中添加:D:\Ins_Develop\opencv4.x\opencv\build\x64\vc15\bin4、将D:\Ins_Develop\opencv4.x\opencv\build\x64\vc15\bin 目录下的opencv_world4原创 2021-02-05 10:17:43 · 1561 阅读 · 0 评论 -
常见分辨率时序表
//=============================================================================================================================================== // VIC Total Active Freq ...原创 2020-08-08 09:32:21 · 4255 阅读 · 0 评论 -
五种基于RGB色彩空间统计的皮肤检测算法
最近一直在研究多脸谱识别以及如何分辨多个皮肤区域是否是人脸的问题网上找了很多资料,看了很多篇文章,将其中基于RGB色彩空间识别皮肤的统计算法做了一下总结,统计识别方法主要是简单相比与很多其它基于机器学习的算法,本人总结了五种RGB色彩空间的统计算法源码如下:Skin Filter1:[java] view plaincopypublic class SkinFilter1 extends Abst原创 2015-07-24 10:18:23 · 2712 阅读 · 0 评论 -
常用YUV转RGB代码
常用YUV转RGB [java] view plaincopyprint?public class YuvToRGB { private static int R = 0; private static int G = 1; private static int B = 2; //I420是yuv420格式,是3个plane,排列方式为(Y)(U)(V)原创 2016-01-19 19:14:33 · 4028 阅读 · 0 评论 -
FFMPEG 实现 YUV,RGB各种图像原始数据之间的转换(swscale)
FFMPEG中的swscale提供了视频原始数据(YUV420,YUV422,YUV444,RGB24...)之间的转换,分辨率变换等操作,使用起来十分方便,在这里记录一下它的用法。swscale主要用于在2个AVFrame之间进行转换。下面来看一个视频解码的简单例子,这个程序完成了对"北京移动开发者大会茶歇视频2.flv"(其实就是优酷上的一个普通视频)的解码工作,并将解码后的数据保存为原始数据原创 2016-07-13 15:06:13 · 1724 阅读 · 0 评论 -
分辨率、帧率、宽高比、像素宽高比等视频参数的概念和区别
现在的电视主要有三种制式,用的最多的是两种。所谓制式,就是指电视传送画面时所采用的技术标准。1:PAL制式,采用这种制式的国家有中国,英国等一些欧洲国家。2:NTSC制式,采用这种制式的国家有日本,加拿大,美国等。关于制式的详细知识百度百科已经很完善,我这里就不过多介绍了,不了解的同学必须先去学习一下。分辨率:大家都知道,不管是电视屏幕还是电脑屏幕,都是由一个个的像素点组成的,在电脑上,每个像素点原创 2016-08-30 17:19:27 · 11512 阅读 · 0 评论 -
HDMI中的AVmute是什么功能
1. HDMI AVMute是HDMI TMDS数据岛周期General Control Packet中的一个标示。2. AVMute字面意思是Audio Video Mute声音图像消隐,简单来说就是电视的声音至于静音状态、图像至于黑屏状态。3. 此信号是HDMI输出源(如DVD)发起的,传输给电视。为解决一些问题提出的方案。比如DVD在切换分辨率、Color Space、开关机等操作时,电原创 2016-12-13 14:49:08 · 3476 阅读 · 0 评论 -
选择最合适机器视觉照明的八个小技巧
机器视觉系统中的照明系统是极其重要的一部分,它的好坏直接影响着后面的图像处理。在听了一位日本光源专家的讲座之前,我其实对照明并不太了解,不就是将图像照亮以至于相机能够拍到图像吗?但事实并非如此,照明远非增强图像亮度这样简单,好的照明系统可以减少很多图像处理工作,提升整个机器视觉系统效率。那么照明是怎样一门学问呢?如何在机器视觉系统中选择合适的照明系统呢?合适的照明是机器视觉应用成功的关键,而且是第原创 2016-11-28 08:28:11 · 7260 阅读 · 0 评论 -
图像处理------图像梯度效果
基本思想:利用X方向与Y方向分别实现一阶微分,求取振幅,实现图像梯度效果。使用的两种微分算子分别为Prewitt与Sobel,其中Soble在X, Y两个方向算子分别为:Prewitt在X, Y方向上梯度算子分别为:二:程序思路及实现梯度滤镜提供了两个参数:– 方向,用来要决定图像完成X方向梯度计算, Y方向梯度计算,或者是振幅计算– 算子类型,用来决定是使用sobel算子或者是prewitt算子原创 2015-07-24 10:17:17 · 2605 阅读 · 0 评论 -
二叉树递归分形,牛顿分形图案
1. 牛顿分形(Newton Fractal)在复数域上使用牛顿迭代生成分形图像,函数公式F(z) = z^3 – 1在复数域上面有三个根,一个是1,另外两个分别是复数-0.5+0.87i 与 -0.5 – 0.87i根据计算出来根的值不同转换为RGB三种不同的颜色,根据迭代次数的多少设置颜色值的大小,即颜色强度。2. 曼德布罗特集合分形(Mandelbort Set Fractal) 使用复数函原创 2015-07-24 10:16:07 · 3679 阅读 · 1 评论 -
图像处理------相似图片识别(直方图应用篇)
算法概述:首先对源图像与要筛选的图像进行直方图数据采集,对采集的各自图像直方图进行归一化再使用巴氏系数算法对直方图数据进行计算,最终得出图像相似度值,其值范围在[0, 1]之间0表示极其不同,1表示极其相似(相同)。 算法步骤详解:大致可以分为两步,根据源图像与候选图像的像素数据,生成各自直方图数据。第二步:使用第一步输出的直方图结果,运用巴氏系数(Bhattacharyya coefficien原创 2015-07-24 10:42:46 · 4927 阅读 · 1 评论 -
图像处理------基于Otsu阈值二值化
一:基本原理该方法是图像二值化处理常见方法之一,在Matlab与OpenCV中均有实现。Otsu Threshing方法是一种基于寻找合适阈值实现二值化的方法,其最重要的部分是寻找图像二值化阈值,然后根据阈值将图像分为前景(白色)或者背景(黑色)。假设有6x6的灰度图像,其像素数据及其对应的直方图如下图:阈值寻找方法首先假设是为T=3,则背景像素的比重、均值、方差的计算结果如下:根据前景像素直方图原创 2015-07-24 15:11:58 · 6347 阅读 · 1 评论 -
图像处理------泛洪填充算法(Flood Fill Algorithm) 油漆桶功能
泛洪填充算法(Flood Fill Algorithm)泛洪填充算法又称洪水填充算法是在很多图形绘制软件中常用的填充算法,最熟悉不过就是windows paint的油漆桶功能。算法的原理很简单,就是从一个点开始附近像素点,填充成新的颜色,直到封闭区域内的所有像素点都被填充新颜色为止。泛红填充实现最常见有四邻域像素填充法,八邻域像素填充法,基于扫描线的像素填充方法。根据实现又可以分为递归与非递归(基原创 2015-07-24 15:03:53 · 8485 阅读 · 0 评论 -
图像处理------Canny边缘检测
一:历史Canny边缘检测算法是1986年有John F. Canny开发出来一种基于图像梯度计算的边缘检测算法,同时Canny本人对计算图像边缘提取学科的发展也是做出了很多的贡献。尽管至今已经许多年过去,但是该算法仍然是图像边缘检测方法经典算法之一。二:Canny边缘检测算法经典的Canny边缘检测算法通常都是从高斯模糊开始,到基于双阈值实现边缘连接结束。但是在实际工程应用中,考虑到输入图像都是原创 2015-07-24 15:10:33 · 2374 阅读 · 0 评论 -
图像处理------高斯一阶及二阶导数计算
图像的一阶与二阶导数计算在图像特征提取与边缘提取中十分重要。一阶与二阶导数的作用,通常情况下:一阶导数可以反应出图像灰度梯度的变化情况二阶导数可以提取出图像的细节同时双响应图像梯度变化情况常见的算子有Robot, Sobel算子,二阶常见多数为拉普拉斯算子,如图所示:对于一个1D的有限集合数据f(x) = {1…N}, 假设dx的间隔为1则一阶导数计算公式如下:Df(x) = f(x+1) – f原创 2015-07-24 15:07:41 · 3643 阅读 · 0 评论 -
图像处理------高斯金字塔
一:图像金字塔基本操作对一张图像不断的模糊之后向下采样,得到不同分辨率的图像,同时每次得到的新的图像宽与高是原来图像的1/2, 最常见就是基于高斯的模糊之后采样,得到的一系列图像称为高斯金字塔。高斯金字塔不同(DoG)又称为拉普拉斯金字塔,其计算公式如下:L(i) = G(i) – expand(G(i+1))第i层拉普拉斯金字塔是由第i层高斯金字塔减去第i+1层高斯金字塔expand之后得到。本原创 2015-07-24 15:05:39 · 1846 阅读 · 1 评论 -
图像处理------K-Means算法演示
一:数学原理K-Means算法的作者是MacQueen, 基本的数学原理很容易理解,假设有一个像素数据集P。我们要根据值不同将它分为两个基本的数据集合Cluster1, Cluster2,使用K-Means算法大致如下:假设两个Cluster的RGB值分别为112,225,244和23,34,99则像素集合中的像素点a(222,212,234), b(198,205,229), c(25,77,5原创 2015-07-24 15:01:05 · 1756 阅读 · 0 评论 -
LVDS/DVI/HDMI Interface
数字视频信号以SXGA为例,其时序如下: 垂直: 水平: 图中DSPTMG为使能信号,VSYNC为场同步信号,HSYNC为行同步信号。在行场的消隐期(T1与T7),DSPTMG为低电平,在此期间无有效视频数据。 注意一个重要参数:对于这个时序的SXGA点频是108MHz1066×1688×60=107.964480MHz 1 Open LVDS D原创 2017-01-04 08:48:07 · 2997 阅读 · 0 评论 -
相位噪声 dBc/Hz
相位噪声和抖动是对同一种现象的两种不同的定量方式。在理想情况下,一个频率固定的完美的脉冲信号(以1 MHz为例)的持续时间应该恰好是1微秒,每500ns有一个跳变沿。但不幸的是,这种信号并不存在。如图1所示,信号周期的长度总会有一定变化,从而导致下一个沿的到来时间不确定。这种不确定就是相位噪声,或者说抖动。 相位噪声是频率域的概念。相位噪声是对信号时序变化的另一种测量方式,其结果在频率域内显示。原创 2017-02-15 10:23:03 · 29052 阅读 · 4 评论 -
基于hi3531的live555直播h264视频流
刚开始接触live555,在live555\testProgs中有很多很好的例子来讲解live555各方面的应用;但是都是以文件形式给到服务器中,然后广播出来的,但是很多情况下我们是需要直播的,那就不能用文件的形式来操作了,也试过用命名管道的方式,在linux上是可以的,但是在安卓上兼容性就不是很好了,像权限问题,以及命名管道不能在某种格式的内存中使用等,所以本文就是描述怎样实现将已经...原创 2019-02-25 08:08:44 · 1851 阅读 · 0 评论 -
camera sensor的分类及区别
camera sensor分为YUV sensor 和Bayer sensor。YUV sensor又叫SOC sensor,它的输出格式是YUV格式的,YUV格式又分很多种,常见的有YUV422,YUV420。Bayer sensor的数据输出格式是RAW格式的。现在的主流是Bayer sensor,因为YUV sensor的数据量都比较大,例如YUV422格式1个pixel占据两个...转载 2018-11-16 16:21:26 · 1390 阅读 · 0 评论 -
Camera sensor 基本知识
一、Camera 工作原理介绍 1. 结构 . 一般来说,camera 主要是由 lens 和 sensor IC 两部分组成,其中有的 sensor IC 集成 了 DSP,有的没有集成,但也需要外部 DSP 处理。细分的来讲,camera 设备由下边几部 分构成: 1) lens(镜头) 一般 camera 的镜头结构是有几片透镜组成,分有塑胶透镜(Plastic)和玻璃透 镜(Glas...转载 2018-11-16 16:19:04 · 3126 阅读 · 0 评论 -
hi3531下交叉编译移植 FFMPEG X264 XVID
1. 主机环境: Thinkpad x230 CTO win7 64位 + VMware 11.1.2 + ubuntu 12.04(LTS)【Linux ubuntu 3.2.0-29-generic- pae #46-Ubuntu SMP Fri Jul 27 17:25:43 UTC 2012 i686 i686...原创 2018-12-05 16:33:25 · 614 阅读 · 0 评论 -
基于hi3531压缩YUV-D1 H264(sample_enc例子改写)
不废话/****************************************************************************** A simple program of Hisilicon HI3531 video encode implementation. Copyright (C), 2010-2011, Hisilicon Tech. Co...原创 2018-12-05 16:34:59 · 1058 阅读 · 0 评论 -
H264编码profile & level控制
H.264有四种画质级别,分别是baseline, extended, main, high:1、Baseline Profile:基本画质。支持I/P 帧,只支持无交错(Progressive)和CAVLC; 2、Extended profile:进阶画质。支持I/P/B/SP/SI 帧,只支持无交错(Progressive)和CAVLC;(用的少) 3、Main profile:主流画...原创 2018-11-12 15:49:36 · 523 阅读 · 0 评论 -
关于yuv 格式-Semi Planar和Planar
关于yuv 格式YUV 格式通常有两大类:打包(packed)格式和平面(planar)格式。前者将 YUV 分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素(macro-pixel);而后者使用三个数组分开存放 YUV 三个分量,就像是一个三维平面一样。 几种常见的yuv格式1.YUV422 Planar这里,Y\U\V数据是分开存放的,每两个水平Y采样点,有一...原创 2018-11-12 15:38:36 · 586 阅读 · 0 评论 -
H264/HEVC 常用缩写词及其含义
B Bi-predictive:双向预测,即B帧或B条带,B条带中的CU可以采用帧内或帧间预测编码,每个预测块采用双向预测方式进行预测,B条带编码时同时使用参考图像列表0和参考图像列表1。BLA Broken Link Access:断点连接接入,主要用于实现对不同视频码流的拼接。只要简单地把后续码流中的一个IRAP(帧内随机接入点)图像的NAL单元类型改变为BLA标记值,串接到前面码流中IR...原创 2018-11-12 09:58:32 · 1330 阅读 · 0 评论 -
YUYV数据—X264编码H264视频实例
x264库的编译可以见之前博客:http://blog.csdn.net/li_wen01/article/details/53571929在PC上编译X264,可以直接执行下面三条命令:./configure --enable-sharedmakemake install/*====================================================...原创 2018-11-09 14:57:12 · 1022 阅读 · 0 评论 -
H264编码profile & level控制
背景知识先科普一下profile&level。(这里讨论最常用的H264) H.264有四种画质级别,分别是baseline, extended, main, high: 1、Baseline Profile:基本画质。支持I/P 帧,只支持无交错(Progressive)和CAVLC; 2、Extended profile:进阶画质。支持I/P/B/SP/SI 帧,只支...原创 2018-11-09 10:14:11 · 519 阅读 · 0 评论 -
简洁明了的插值音频重采样算法例子 (附完整C代码)
近一段时间在图像算法以及音频算法之间来回游走。经常有一些需求,需要将音频进行采样转码处理。现有的知名开源库,诸如: webrtc , sox等,代码阅读起来实在闹心。而音频重采样其实也就是插值算法。与图像方面的插值算法没有太大的区别。基于双线性插值的思路。博主简单实现一个简洁的重采样算法,用在对采样音质要求不高的情况下,也是够用了。 编解码库采用dr_wavhttps://github.com/m...原创 2018-04-04 14:41:48 · 5949 阅读 · 2 评论 -
SPEEX重采样分析(一)
简介算法速度快SIMD(SSE)指令支持低内存高质量该算法是基于最原始的重采样算法: Smith, Julius O. Digital Audio ResamplingHome Page Center for Computer Research in Music and Acoustics (CCRMA), Stanford University, 2007. Web publi...原创 2018-04-03 17:40:10 · 2950 阅读 · 0 评论 -
BT标准文档-Broadcasting service (television)
http://www.itu.int/rec/R-REC-BT/enBT.266Phase pre-correction of television transmitters Note - Suppressed on 27/01/2012 (CACE/558)BT.417Minimum field strengths for which protection may be sought in p...转载 2018-04-03 08:29:25 · 1850 阅读 · 0 评论 -
教您正确理解时钟器件的抖动性能
在选择时钟器件时,抖动指标是最重要的关键参数之一。但不同的时钟器件,对抖动的描述不尽相同,如不带锁相环的时钟驱动器有附加抖动指标要求,而带锁相环实现零延时的时钟驱动器则有周期抖动和周期间抖动指。同时,不同厂家对相关时钟器件的抖动指标定义条件也不一样,如在时钟合成器条件下测试,还是在抖动滤除条件下测试等。为了正确理解时钟相关器件的抖动指标规格,同时选择抖动性能适合系统应用的时钟解决方案,本文详细介绍原创 2017-02-15 10:23:26 · 9282 阅读 · 2 评论 -
图像处理------Fuzzy C Means的聚合算法
Fuzzy C-Means聚合算法在图像分割(segmentation)和图像视觉处理中常常被用到聚合算法之一本文是完全基于JAVA语言实现Fuzzy C-Means聚合算法,并可以运用到图像处理中实现简单的对象提取。一:数学原理在解释数学原理之前,请先看看这个链接算是热身吧看不懂没关系。我的解释足够详细,小学毕业都可以学会,本人就是小学毕业。Fuzzy C-means算法主要是比较RGB空间的每原创 2015-07-24 15:00:07 · 4074 阅读 · 0 评论 -
图像处理------添加高斯与泊松噪声
数学基础:什么是泊松噪声,就是噪声分布符合泊松分布模型。泊松分布(Poisson Di)的公式如下:关于泊松分布的详细解释看这里:http://zh.wikipedia.org/wiki/泊松分佈关于高斯分布与高斯噪声看这里:http://blog.csdn.net/jia20003/article/details/7181463 二:程序实现以前在图像加噪博文中现实的加高斯噪声,比较复杂。是自己原创 2015-07-24 14:58:16 · 4733 阅读 · 0 评论 -
图像处理------基于像素的图像混合
介绍几种常见的将两张图像混合在一起形成一张新的图像的算法,首先看一下下面算法演示中要使用的两张图像:为了得到更好的混合效果,我选择了两张一样大小的图片。方法一:通过简单对于像素点的像素相乘得到输出像素值,代码演示如下:[java] view plaincopyprivate int modeOne(int v1, int v2) { "white-space:pre"> return (v1原创 2015-07-24 14:57:28 · 1699 阅读 · 0 评论 -
图像处理------ 一阶微分应用
一:数学背景首先看一下一维的微分公式Δf = f(x+1) – f(x), 对于一幅二维的数字图像f(x,y)而言,需要完成XY两个方向上的微分,所以有如下的公式:分别对X,Y两个方向上求出它们的偏微分,最终得到梯度Delta F.对于离散的图像来说,一阶微分的数学表达相当于两个相邻像素的差值,根据选择的梯度算子不同,效果可能有所不同,但是基本原理不会变化。最常见的算子为Roberts算子,其它常原创 2015-07-24 10:07:43 · 2524 阅读 · 0 评论 -
图像特效------三角几何应用
一:基本的三角函数知识同样根据a, b的值可以计算出角度θ值,称之为反三角函数,角度θ=atan2(a, b)图像处理中应用三角函数常常把中心点设置为A点,任意像素点B到A的距离可以根据三角函数来计算得出,常见的计算模型如下:对待求像素点加以一定三角函数变化,可以实现很多意想不到的图形特效,中心像素点可以通过以下计算获得int centerX = width/2;int centerY = hei原创 2015-07-24 10:06:05 · 1151 阅读 · 0 评论