自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (5)
  • 收藏
  • 关注

原创 利用Adaboost和Haar特征进行人脸检测

利用哈尔和LBP特征,训练分类器,然后进行人脸检测

2015-11-30 18:51:20 8002

原创 人脸检测特征-LBP特征

哈尔特的基础上产生的LBP特征

2015-11-30 18:49:31 8938

原创 人脸检测特征-haar特征

哈尔特征

2015-11-30 18:48:25 7385

原创 外部排序-合并排序

定义省略:code:#include void MergeTwo(int *src, int *dst, int left, int middle, int n){ int i, j, k, t; i = left; k = left; j = middle + 1; while ( (i <= middle) && (j <= n) ) { if

2015-11-29 17:32:53 693

原创 内部排序-插入排序-二叉树排序法

思想主要是:利用要排序的数据构造二叉树,然后再中序遍历二叉树即可。方法简单,但是简历的二叉树歪斜程度较大。时间复杂度O(nlogn), 受树的高度影响。空间复杂度为O(n), 比较耗费空间。#include "stdafx.h"#include void binary_tree(int *btree, int *list, int len){ int i; in

2015-11-26 21:43:55 879 1

原创 内部排序-插入排序-希尔排序

直接上code吧#include "stdafx.h"#include #include #include void shell_sort(int *list, int len);int _tmain(int argc, _TCHAR* argv[]){ int list[] = { 3, 87, 4, 3, 5, 65, 88, 92, 1, 32, 11, 44, 36,

2015-11-26 17:19:59 505

原创 内部排序-插入式排序

将要排序的元素通过插入的方式找到其适当的位置来进行排序。直接上code吧int g_counter1 = 0;int g_counter2 = 0;void insert_sort(int *list, int len){ int i, j, k; int temp; for(i = 1; i < len; i++) { temp = list[i]; for (j

2015-11-25 20:30:42 694

原创 内部排序-交换式排序-选择排序

选择排序第一步:选择,既按照指定的规则选择出一个元素第二部: 将选择出的元素和其他元素交换,在剩下的元素中循环进行。#include void select_sort(int *list, int len);int main(int argc, char* argv[]){ int list[20] = {0}; int i, index; int list1

2015-11-24 21:15:59 449

转载 走进结构体存储--位域

http://www.cnblogs.com/pure/archive/2013/04/22/3034818.htmlhttp://blog.csdn.net/sjin_1314/article/details/86830081、位域简介       在嵌入式编程中,经常会遇到下面的结构:[csharp] view plaincopyprint?

2015-11-24 14:17:34 847

原创 struct 位域

//直接上code吧位域的作用就是像操作变量一样来操作bit位,常用于嵌入式编程中,来达到较少存储空间使用的目的。#include #include int main(void){ struct bs { unsigned char a: 1; unsigned char b: 3; unsigned char c: 4; unsigned char d: 1;

2015-11-24 10:12:23 6444

原创 图像视频防抖

视频防抖该项技术关键字挺多的,但作用都是去除视频拍摄过程中轻微抖动造成的图像模糊。Anti-Shake,Shake-proof, imagestabilization都是这个意思,image stabilization是由canon最先开始这么称呼的,Anti-shake更通用一点。该项技术分为两大类,镜头防抖和电子防抖。做镜头技术牛的公司喜欢搞这个,像canon.更经济通用的方法

2015-11-18 15:52:07 19255 2

原创 AVClass和AVOption

简单介绍下:AVClass像一个桥梁一样,一头连接着context一头连接着AVOption。AVOption 存储着一些信息,变量名字,变量的简单介绍,偏移长度,类型,默认值,最小值,最大值,等。利用Option机制,可以通过名字在外部访问内存中的变量内容。很方便。草图如下:注意:AVClass必须是Context的第一个变量。在外部可以通过av_opt_set/

2015-11-16 16:32:25 7020

原创 图像彩色空间

RGB颜色空间在计算机技术中使用最广泛的颜色空间是RGB颜色空间,它是一种与人的视觉系统结构密切相关的模型。根据人眼睛的结构,所有的颜色都可以看成三个基本颜色-红色(red)、绿色(green)和蓝色(blue)的不同组合,大部分显示器都采用这种颜色模型。对一幅三通道彩色数字图像C,对每个图像像素(x,y),需要指出三个矢量分量R、G、B;RGB对应到显示器的三个刺激值,组成三维正

2015-11-12 21:56:31 22151

原创 Bayer图像的由来及Opencv preview

首先来介绍一下关于相机的基础知识:1.CCD/CMOS相机的感光元件对波长(即颜色)不敏感,如果拿一个裸体的CCD/CMOS传感器去拍摄图像,只能得到灰度图;2.因为上述这条,人们必须找到能够将波长区分开的方法,其中一种是使用三个滤光片(通常是RGB三色),在这三个滤光片之后放置三个CCD,这就是3CCD相机;显然上一种方法的成本太高了,聪明的人类又想到了另一个方法:那就是

2015-11-12 21:31:31 9646

原创 python+opencv实操-图像基本操作

直接上code吧,暂记于此。from PIL import Image #导入图像库中的Imagefrom pylab import *pil_im_rgb = Image.open('e:\PC.jpg')pil_im_rgb.show()#(1)转化为灰度图像pil_im_gray = Image.open('e

2015-11-12 17:17:43 6606

原创 零长度数组解析

接触了linux编程之后,经常会遇到一个很诡异的零长度数组,今天决定深挖一下。Struct command {    Int domain;    Int length;    Char bytes[0];//也可以写成char bytes[];}在某一结构末尾如定义类似 char bytes[0] 的零长度数组,表示该结构不定长,可通过数组的方式进行扩展。结构中必包含一个

2015-11-09 19:53:11 6684

原创 快速判断两个矩形是否相交

两个矩形之间的位置关系无外乎图中的5中case.难道我们要每个case都要判断一边,然后决定是否相交?其实是有通用方法的。如果两个矩形相交,那么矩形A B的中心点和矩形的边长是有一定关系的。Case 2345中,两个中心点间的距离肯定小于AB边长和的一半。Case 1中就像等了。设A[x01,y01,x02,y02]  B[x11,y11,x12

2015-11-09 16:26:11 43325 10

原创 将二进制字符串转换为二进制数据

例如将字符串“01000001”转为0x41, 如果字符串不是8的整数倍,二进制地位补0。#include #include void str_bin_to_u8(const char *str, int len, unsigned char *data){ int i = 0; unsigned char and_bit[] = {0x7F, 0xBF, 0xDF, 0xEF, 0x

2015-11-07 11:34:22 9475

原创 图像质量评价指标--大全

http://sse.tongji.edu.cn/linzhang/IQA/IQA.htm

2015-11-06 10:59:53 7594

原创 图像质量评价--SSIM

SSIM 全称为structural similarity (SSIM) indexmeasurement system。是一种衡量两幅图像相似度的指标,其取值范围为[0,1],值越大越好;构相似性理论认为,图像是高度结构化的,即像素间有很强的相关性,特别是空域中最接近的像素,这种相关性蕴含着视觉场景中物体结构的重要信息;作为结构相似性理论的实现,结构相似度指数从图像组成的角度将结构信

2015-11-06 10:45:47 16582

转载 ffmpeg AV转换常用命令

帖子比较长,建议Ctrl+D bookmark一下,或者提交到别的什么Social bookmark sites,不想看mencoder/ffmpeg详细技术手册的,可以把它当快速简易参考看,主要的功能有:视频格式转换 音频格式转换 切割视频及音频 连接两段视频 视频音频同步 将图像系列转换成视频       这里是百鬼丸以前收集的一部分命令行视频音频编辑脚本命令,一直在自己的记事

2015-11-03 18:42:04 1019

原创 华为2014校园招聘的机试题目--字符串压缩

[html] view plaincopy难得有空,玩玩今年的面试题:p> p>p>9月5日,华为2014校园招聘的机试题目  通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。  压缩规则:      1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字

2015-11-03 18:00:52 6203

原创 静态变量详解

先看一个程序吧。#include "stdafx.h"#include "stdio.h"#include "iostream.h"int fun1(){ static int a1 = 5; a1++; return a1;}int fun2(){ static int a1 = 5; int a2 = 5; a2++; return a2;}int main(i

2015-11-03 17:59:27 6563

原创 输出一个句子中最长的单词

//输出一个句子中最长的单词,如果两个单词长度相等,输出后出现的单词#include "stdafx.h"#include "stdio.h"#include "string.h"int main(int argc, char* argv[]){ char str[100] = ""; printf("please input a sentece:"); gets(str)

2015-11-03 17:58:19 4875 1

原创 linux内核内存管理学习笔记

内存管理:物理地址出现在cpu外部地址总线上的寻址物理内存的地址信号线程地址虚拟地址在32位cpu架构下4G地址空间中的地址逻辑地址汇编中使用的地址 20位的虚拟地址如何存入16位的寄存器中呢分段方式来实现逻辑段的起始地址段地址必须是16的倍数,逻辑段的最大容量是64k物理地址 = 段地址+段内偏移量物理地址 = 段寄存器的值×16 + 逻辑地址 

2015-11-03 17:51:28 6164

原创 linux内核模块开发笔记一

内核模块开发:如果将所有的组件都编译进内核,会造成内核文件过大,修改组件后,需要重新编译整个内核,效率比较低。内核模块就相当于补丁,在需要的时候才会起作用,模块本身不被编译进内核文件,在运行期间动态的添加和卸载。模块加载函数:安装内核模块时,内核模块加载函数被调用,通过module_init宏指定内核模块加载函数。模块卸载函数:卸载内核模块时,调用模块卸载函数,通过module

2015-11-03 17:50:46 6117

原创 linux驱动学习一

使硬件工作的软件叫做driver分为三大类:字符设备驱动,块设备驱动,网络驱动 主设备号:用来标识与设备文件相连的驱动程序。用来反映设备类型。次设备号:用来区分驱动程序操作的是哪个设备。用来区分同类型的设备。可以通过静态申请,动态分配两种方式来获取设备号。静态申请:找一个没用的设备号,用register_chrdev_region函数注册设备号,优点是比较简单,缺点是驱动多

2015-11-03 17:49:45 6345

原创 linux IPC 通信 study 六:套接字socket

稍后整理

2015-11-03 17:47:57 329

原创 linux IPC 通信 study 五:system v 共享内存

占位

2015-11-03 17:46:21 6116

原创 linux IPC 通信 study 四:SYSTEM_V消息队列

linux 消息队列 分为两个标准,分别为SystemV消息队列,POSIX消息队列SystemV消息队列

2015-11-03 17:45:20 6337

原创 linux IPC 通信 study 三:system v 信号量semphore

后面再补

2015-11-03 17:44:30 6286

原创 linux IPC 通信 study 二:信号signal

信号是一种软中断,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。signal是ipc机制中唯一的异步通信机制。信号事件的发生有两个来源:硬件 比如键盘或者其他硬件故障。软件 比如一些系统函数 kill raise alarm 或者其他一些非法运算等操作。进程对信号的响应有

2015-11-03 17:42:25 6269

原创 linux IPC 通信 study 一:管道

linux 进程通信机制:分为基于system V 和posix。 常用的通信方式分为:(1) 管道pipe和命名管道fifo.(2) 信号signal(3) 信号量semphore(4) 消息队列 msg queue(5) 共享内存share memory(6) 套接字socket详解如下:1.1. 匿名管道通信pipe,它把一个进程的输入和另外一个进程的输出

2015-11-03 17:41:10 6248

原创 打印数字的二进制 利用数组输出大数据

#include "stdafx.h"#include #include "math.h"using namespace std;void printBinary(const unsigned char val)   {   for(int i = 7; i >= 0; i--)    if(val & (1             std::cout     

2015-11-03 17:29:57 6807

原创 多线程相关内核对象使用情况对比

主线程与子线程之间要进行同步访问公共变量,子线程之间要互斥的访问公共变量。如下列出几种常用的同步互斥方法。(1)关键段,criticalSection,可以用于线程间的互斥,不可以用于线程间同步,不能跨进程使用,有线程所有权,无需要处理“遗弃”问题。(2)互斥量,mutex,             也可以解决互斥问题,不能解决同步问题,可以跨进程使用,拥有线程所有权,无需要处理“遗弃”问

2015-11-03 17:22:20 6078

原创 linux线程异常保护

用多线程的时候要添加thread库, -lpthread创建线程 create_thread如果线程正常退出,不会存在问题。如果线程非正常退出,那么线程中申请的资源就不能正常释放,申请内存造成内存泄漏,锁和信号量等操作容易造成死锁。利用保护机制可以避免上述问题:pthread_cleanup_push();//要保护的操作pthread_cleanu

2015-11-03 17:20:46 7894

原创 git 学习笔记 一

一 安装apt-get install git-core二 基本应用1. git init: | 创建一个新的仓库。2. git clone: | clone 一个仓库。3. git config | 添加自己的帐号信息。git config --global user.name "yf123"git config --global us...

2015-11-03 17:17:19 460

原创 vim常用命令

H 或者 左箭头           光标向左移动一个字符J 或者   下箭头           光标向下移动一个字符K或者   上箭头           光标向上移动一个字符L 或者   右箭头           光标向右移动一个字符如果想多次移动的话,可以加数字如30j,则向下移动30个字符Ctrl+f            屏幕向下移动一页,相当于Page down

2015-11-03 17:13:04 5990

原创 vi常用命令

复制是把指定内容复制到内存的一块缓冲区中,而粘贴是把缓冲区中的内容粘贴到光标所在位置。复制和粘贴的方法如下。yw:将光标所在位置到字尾的字符复制到缓冲区中,y是yank的首字母。nyw:将光标所在位置开始的n个字复制到缓冲区中,n为数字。yb:从光标开始向左复制一个字。nyb:从光标开始向左复制n个字,n为数字。y0:复制从光标前一个字符到行首的所有字符。y$:复制从光

2015-11-03 17:12:23 6053

原创 网络TCP/UDP编程学习

Socket分为三种:1.      SOCK_STREAM  TCP2.      SOCK_DGRAM  UDP3.      SOCK_RAW   基于IP协议,用于新的网络协议的测试。常用结构体:Struct sockaddr{       U_shortsa_family;//协议族,AF_XXXX       Charsa_data[14]; //14字

2015-11-03 17:03:44 6126

git_ros_dep.zip

when you try to install ros in china without proxy, it is hard for you to do "rosdep init"and you will get errors, in order to solve this issue, you have to download this file to update rosdep

2020-05-14

show_uyvy422.zip

通过opengl shader将UYVY422格式的数据解码为RGB,然后显示。

2019-10-29

show_uyvy422_using_PBO.zip

使用PBO,DMA快速copy 内存的YUV数据到GPU的memory中,shader将YUV转换为RGB再显示出来,自带YUV资源文件。

2019-10-29

hdrnet cvpr2017

cvpr2017获奖文章,hdrnet,使用深度学习基础进行高动态范围图像处理,效果比较好,国内不好下载,共享在此,资源分数只能选择1-5,不能选零了。 希望能帮助到对图像处理感兴趣的亲

2018-05-26

mp4文档及解码程序源码

从官网上下载的标准SPEC,以及一个标准C写的MP4 Box parse程序,配合着SPEC看,会比较好。程序在Windows下使用VS2013可以直接跑,需要的话,可以看看main函数,如何传入mp4文档。

2018-05-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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