- 博客(10)
- 资源 (19)
- 收藏
- 关注
转载 程序员面试-循环移位 - 修订版
题目要求:将字符串str进行循环移位,要求算法空间复杂度O(1),时间复杂度O(n)思路:假设str需要循环移位k位,则将其分为前后两部分,分别长k和n-k,称AB则循环移位的过程即为XY->YX. 可由XT即转置完成,(XTYT)T=(YT)T(XT)T=YX实现如下:[cpp] view plaincopyprint?/* * Reverse
2013-07-29 20:23:45 597
转载 程序员面试——计算二进制数中1的个数
本文提供了三种方法,分别计算一个数的二进制表示中1的个数。方法和解释分别见Count1, Count2, Count3函数。只有Count1不能满足负数要求(会死循环进去),其他两个都可以操作32b以内正负数。Count1:每次将x末位与1相与,看最后以为是否为1, 然后将x右移Count2:将变量y从1开始与x相与,然后每次将y左移,和上个方法类似Count3:每次将x&=(
2013-07-29 17:33:54 685
转载 灰度 灰度图像
1、灰度图像、灰度(值)灰度图像是由灰度像素组成的,所谓灰度像素就是指:在RGB颜色模型下,图像中每个像素颜色的R、G、B 三种基色的分量值相等的像素。在RGB 颜色模型下,RGB 三原色的取值都是0~255 之间的整数。因此,灰度图像只能表现256 种颜色(或亮度)。通常把灰度图像中像素的亮度称为灰度值。2、图像的灰度化处理在数字图像处理中,灰度直方图是一种最简单、最有用的工具之一,
2013-07-16 14:37:52 1746
转载 opencv中直方图的理解
直方图是计算机视觉中最经典的工具之一。现在我们来详细讲讲直方图。1.直方图的作用。通过标记帧与帧之间的边缘和颜色的统计变化,直方图被用来检测视频中场景的变化。通过为每个兴趣点设置一个有相近特征的直方图所构成的“标签”,用以确定图像中的兴趣点。边缘、色彩、角等直方图构成了可以被传递给目标识别分类器的一个通用特征类型。2.如何得到直方图(1)首先理解直方图中bin的含义
2013-07-16 14:37:18 818
转载 Camshift算法原理及其Opencv实现
Camshift原理camshift利用目标的颜色直方图模型将图像转换为颜色概率分布图,初始化一个搜索窗的大小和位置,并根据上一帧得到的结果自适应调整搜索窗口的位置和大小,从而定位出当前图像中目标的中心位置。分为三个部分:1--色彩投影图(反向投影):(1).RGB颜色空间对光照亮度变化较为敏感,为了减少此变化对跟踪效果的影响,首先将图像从RGB空间转换到HSV空间。(2).然
2013-07-16 14:34:23 757
转载 直方图进阶应用(对比,块反向投影)
一、对比直方图OpenCV中提供了cvCompareHist()函数作为一种标准来比较两个直方图的相似度。[cpp] view plaincopyprint?double cvCompareHist( const CvHistogram* hist1, //直方图1 const CvHistogram* hist2,//直方图2 int meth
2013-07-16 14:33:33 1307
转载 直方图的简单应用(显示,均衡化)
其实我们从小就有接触直方图这东西了,好像以前数学考试很多题目都是通过直方分布图来求各种分布情况和概率其实,在OPENCV,直方图也是一个分解图像的各方面的概率,如RGB,HSV等,让我们更好利用这些概率去处理一些东西总之几个词吧:形象,方便灰度直方图的定义灰度直方图是灰度级的函数,描述图像中该灰度级的像素个数(或该灰度级像素出现的频率):其横坐标是灰度级,纵坐标表示图像
2013-07-16 14:32:05 1357
转载 C++ unsigned long 转化为 unsigned char*
C++ Code123456789101112131415161718unsignedlong lFileLen =1000;unsigned char *ucFileLenFlag;ucFileLenFlag = (unsignedchar *)
2013-07-15 17:29:50 2915
转载 C#程序开发中经常遇到的10条实用的代码
1 读取操作系统和CLR的版本OperatingSystem os = System.Environment.OSVersion;Console.WriteLine(“Platform: {0}”, os.Platform);Console.WriteLine(“Service Pack: {0}”, os.ServicePack);Console.WriteLine(“Versi
2013-07-15 17:27:51 998
转载 gcnew 和new的区别
浅议C /CLI的gcnew关键字C /CLI中使用gcnew关键字表示在托管堆上分配内存,并且为了和以前的指针区分,用^来替换* ,就语义上来说他们的区别大致如下: 1. gcnew返回的是个句柄(Handle),而new返回的是实际的内存地址. 2. gcnew创建的对象由虚拟机托管,而new创建的对象必须自己来管理和释放. 当然,从程式员的角度来说
2013-07-04 10:15:37 1109
C#描述中的单例与多例模式
2012-08-15
C#异步回调算法
2012-08-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人