自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 H323加载H264插件时出现找不到dll文件问题解决

问题描述: 首先,根据官方文档进行H264插件加载的方法如下: ================================================ H.264 Visual Studio Simon Horne - Feb 2010 ====================...

2019-02-01 13:31:40 258 0

原创 使用Opencv时调用svm->load和VideoCapture报错的问题分析

问题 1:调用svm->load("SVM_HOG.xml"));时出现“Parsing error (Missing or invalid SVM type) in cv::ml::SVMImpl::read_params ... ...”的报错。 原因分析:...

2019-02-01 11:26:41 1493 1

原创 H323plus添加h264等能力集的疑惑

首先,H323plus自带g.711的语音编码能力,而视频编码(H.261/H.163/H.264)的能力集需自己添加,经自己研究查资料,暂记录以下几点信息: 1. H323plus可通过plugin的方式添加音视频编解码的能力集,即H323plus提供了相应插件接口的源代码,只需要编译通过并将...

2019-01-25 13:27:11 392 1

原创 ETR290规范的理解

ETR290(ETSI TR-101 290 告警事件测量)为“DVB系统测试”指导文件,多应用于广电系统,是对MPEG-2 TS流参数的测试。ETR290为分为3级错误分析。 1. 第一级共6种错误 传输流同步丢失:连续检测到连续5个正常同步视为同步,连续检测到2个以上不正确同步则为同步丢失...

2018-12-26 18:44:40 289 0

原创 使用Tesseract训练图片的方法

所需要的工具: Tesseract4.0(windows版本于2017年1月30号发布),据说windows版本会有很多诡异的Bug; java7以上版本,为安装jTessBoxEditor做准备; jTessBoxEditor,用于标定数据,此软件依赖于java; 准备一些需要识别的目标...

2018-12-15 15:54:14 1586 0

原创 使用Opencv的cv::findContours函数出现内存错误

问题描述: 使用Opencv3.2.0的cv::findContours函数出现如下错误,在做运动跟踪项目以及喷码识别就遇到了类似错误,没有在意;这次进行马赛克检测项目,又遇到了类似错误,有花费了一天时间,在此记录一下。 问题分析: 经查阅资料以及实验分析,得出这是因为contours变...

2018-11-08 20:07:19 628 0

原创 "error LNK2001: 无法解析的外部符号 _sscanf " 问题 解决方法

问题场景: 使用VS2015的软件开发环境中,在引用第三方文件库时,出现了 “libx264.a(ratecontrol.o) : error LNK2019: 无法解析的外部符号 _sscanf,该符号在函数 _x264_ratecontrol_new 中被引用” 等错误,如下图所示: ...

2018-10-09 14:50:24 1583 0

原创 VS2015下安装Visual_Assist_x破解版

下载Visual_Assist_x破解版文件,其中VA_X.dll为破解补丁。下载地址在https://download.csdn.net/download/lifei092/10692783 点击VA_X_Setup2074.exe进行安装,默认安装目录在“C:\Program Files (...

2018-09-28 11:18:10 2845 0

原创 FFmpeg 解码音视频实例及碰到的问题记录(二)

最近项目开发中需要使用FFmpeg进行音视频的解码,在使用过程中遇到了一些问题对其进行记录。 FFmpeg版本:FFmpeg3.4.1 下载地址如下:https://download.csdn.net/download/lifei092/10670992 1、音频解码: av_registe...

2018-09-17 13:56:52 156 0

原创 FFmpeg 解码音视频实例及碰到的问题记录(一)

最近项目开发中需要使用FFmpeg进行音视频的解码,在使用过程中遇到了一些问题对其进行记录。 FFmpeg版本:FFmpeg3.4.1 下载地址如下:https://download.csdn.net/download/lifei092/10670992 1、视频解码: av_registe...

2018-09-17 11:51:33 153 0

原创 出现“Run-Time Check Failure #2 - Stack around the variable 'LoggerThread' was corrupted”问题分析

问题描述: 调试程序过程中出现“Run-Time Check Failure #2 - Stack around the variable 'pParam' was corrupted”的问题。 问题分析: 通过查阅各种资料以及最终的解决方法得知,此问题是由于堆栈溢出或异...

2018-09-14 11:04:48 948 0

原创 FFmpeg中AVFrame中data与linesize的联系

问题描述: 通过以下代码获取到pFrame帧数据(即AVFrame结构体),将pFrame内的帧数据通过memcpy函数复制给已经分配好内存的Buffer中,发现总是报错,错误现象有两种首先是访问越界,其次是图像数据不对,其图像如下所示。 //AVFrame用于存储解码后的像素数据(YU...

2018-09-13 10:55:23 2079 0

原创 STL中的deque队列使用erase删除元素出现问题

这是错误的使用方法: for (deque<StateTable>::iterator iter = standTable.begin(); iter != standTable.end();) { cv::Mat SegTemp; SegModel(it...

2018-09-03 14:08:48 2677 3

原创 解决同名dll冲突的问题

问题描述: 软件同时集成两种IPC的SDK时,遇到dll同名的情况,因此在调用时会出现冲突的情况。 解决方法如下: 采用动态加载dll库的方法。 #include "common.h" #include "iostream" #include &q...

2018-09-03 14:00:49 1837 0

原创 x264代码学习笔记(五):x264_slicetype_analyse函数

x264_slicetype_decide函数(代码所在位置为“x264-snapshot-20171128-2245-stable\encoder\slicetype.c”)的主要作用为:真正用于分析帧类型(I\P\B帧) 调用顺序如下: x264_encoder_encode —&...

2018-09-03 10:28:31 341 0

原创 x264代码学习笔记(四):B帧是何时被确定帧类型的?怎样进行编码的?

       在上一篇博客《x264代码学习笔记(三):x264_slicetype_decide函数》里,在解读x264_slicetype_decide函数过程中,一直有这样的疑问,即B帧是何时被确定类型的,具体是怎样将视频帧由输入序列(播放序列)转换为编码序列呢?        为求解答案...

2018-08-30 14:19:45 1084 0

原创 基于Speex的音频调试实验(NS / AGC / AEC)

1. NS(噪声抑制)功能调试 使用全向Mic进行实验 :  波形图(不加去噪功能): 波形图(加去噪功能): 从波形中可以看出,去噪效果较为明显。Speex的降噪功能,对于人声有噪声抑制效果,但偶尔会有“噼噼”声,而对于音乐播放 “噼噼”的声音出现频率较高;建议播放音乐时关闭此降...

2018-08-28 11:00:06 2545 1

原创 x264代码学习笔记(三):x264_slicetype_decide函数

x264_slicetype_decide函数(代码所在位置为“x264-snapshot-20171128-2245-stable\encoder\slicetype.c”)的主要作用为:分析帧类型(I\P\B帧)以及将视频播放序列转换为编码序列 调用顺序如下: x264_encoder_e...

2018-08-27 11:58:38 752 0

原创 码率控制基础知识

视频编码中,码流控制占有一定比例,它控制着码率输出是否符合预期,从而可以保证码流在网络传输中稳定,减少由于码率波动引起的视频卡顿等现象。下面举一个例子,解释一下码率控制是如何进行的。 一个视频等待压缩,其参数如下: height : 1080 weight : 1920 fps: 25 ...

2018-08-22 11:06:38 2176 0

原创 x264代码学习笔记(二):x264_encoder_encode函数

encode()函数中循环调用encode_frame()函数进行逐帧编码: 调用x264_encoder_encode()函数完成一帧编码; 将编码后的码流载入码流文件中。 static int encode_frame( x264_t *h, hnd_t hout, x264_pictu...

2018-08-21 16:07:31 2293 0

原创 x264代码学习笔记(一):main函数和encode函数

x264代码的主输入口:main()函数 对软件进行多线程初始化 对命令行字符串进行编码格式检测,若不为UTF-8编码格式,则转换 解析命令行参数,并赋值给 x264_param_t 结构体和 cli_opt_t 结构体,以备后续使用 使用encode() 函数对视频数据进行编码压缩 关...

2018-08-16 15:28:03 292 0

原创 字符识别处理流程

 

2018-08-13 14:12:53 784 0

原创 Halcon训练分类器方法

Halcon分类器常识: HALCON自带的分类器不能识别汉字; 下图为Halcon自带的分类器种类(所在路径为:C:\Program Files\MVTec\HALCON-13.0\ocr):   Halcon的分类器有三种MLP、SVM、GMM; SVM:按照个人理解就是找到...

2018-08-13 13:59:59 2783 0

原创 DirectSound播放PCM有杂音的解决方法

问题场景描述:使用DirectSound播放PCM,先点击暂停按钮再点击播放按钮后,大概率会有杂音出现 播放音频单独放在一个线程中处理,程序基于MFC架构,有播放和暂停按钮。如下所示代码为音频播放线程,开始使用static DWORD offset = BUFFERNOTIFYSIZE; 代替p...

2018-08-09 15:36:13 1460 0

原创 视频播放Seek的基本原理

首先了解一下NAL包结构,如下图所示为NAL的包头结构,其中unit_type占用5个bit,表示帧类型如下表所示,其中IDR图像对应的unit_type数值为5,因此可以通过包头信息判断流数据是否为IDR图像。   下面开始介绍视频播放Seek的基本原理,如下图所示,为视频文件播放时...

2018-08-03 10:27:47 2607 0

原创 使用winmm.lib库对windows录音设备采集录音数据

首先包含头文件以及库目录 #include <mmsystem.h> #pragma comment(lib, "winmm.lib")   初始化录音所需变量 WAVEHDR wHdr1[4]; // 采集音频时包括数据缓存的...

2018-08-02 11:59:42 3039 0

原创 PCM音频格式的深入理解

PCM:其数据排列格式为左右声道每个样本点数据交错排列16bit的PCM数据是有负数的,至于负数的意义,我估计是代表电压的正负的,0值代表无声。如下为FFmpeg中所定义的音频格式:enum AVSampleFormat { AV_SAMPLE_FMT_NONE = -1, AV_...

2018-07-10 19:32:03 28132 1

原创 H.264编码过程理解

    如下图所示,为H.264编码流图,首先,输入一组YUV数据,以一个GOP为例,每个GOP包含若干帧数据(IPPP结构或者IPBBP结构);然后,将GOP拆分为一帧输入到编码器中进行编码,一帧数据又包含至少一个Slice;其次,进一步将一帧图像拆分为多个Slice,一个Slice又包含若干个...

2018-04-12 16:40:33 1368 0

原创 vs2015第一次生成dll库所遇到的问题

由于是第一次生成dll库,先普及一下dll库和lib库之间的联系和区别:http://www.cnblogs.com/TenosDoIt/p/3203137.html 这篇博客将其解释的已经非常好了,截取出来以作记录。首先两者都是代码共享的方式。静态库:在链接步骤中,连接器将从库文件取得所需的代码...

2018-03-20 19:27:35 1785 0

原创 Opencv3.2中的Opencl使用过程中遇到的困惑

我的开发环境为:VS2015 + OPencv3.2首先opencl是一个GPU加速技术,因此需要确认机器的显卡是否支持opencl,通过“TechPowerUp GPU-Z” 这款软件可以看出,如图中红色标注位置,本机是支持opencl技术的。OK,下面通过opencv自带的光流算法进行open...

2018-03-15 17:59:05 2383 4

原创 imagewatch工具的使用方法

Imagewatch插件:这个对于opencv的开发者非常重要,可以直接查看图像矩阵里的图片,便于调试,目前可以支持vs2012至vs2015,其他的VS版本不确定支不支持(网上很多人说不支持)。 本人使用的环境为Win10 + VS2015 + opencv3.2 具体使用方法: ...

2017-07-27 14:45:59 2380 4

原创 window下通过msys2编译libx264.lib

网上有很多编译x264库的方法,本人也都折腾了一遍,个人认为最为简单的方法是通过msys2在window系统下搭建编译环境来编译libx264最为简单易行,废话不多说,现在搭建环境。 msys2的下载地址为:http://www.msys2.org/ 首先下载msys2并安装软件,安装时可以选...

2017-05-11 20:12:51 2250 0

提示
确定要删除当前文章?
取消 删除