基于adaboost算法的人脸检测。边缘特征提取的细节问题。
从一张20*20的图,提取的一类边缘特征就有21000个了,又肯定需要多张图,这样特征矩阵根本放不下这么多。应该用什么方法把每一张图的这么多特征进行缩减?得到的特征矩阵应...
从一张20*20的图,提取的一类边缘特征就有21000个了,又肯定需要多张图,这样特征矩阵根本放不下这么多。应该用什么方法把每一张图的这么多特征进行缩减?
得到的特征矩阵应该就是弱分类器训练所需要的了吧?
我一直没有找到如何对这么多的特征进行提取的说明。或者我根本就已经完全理解错误? 展开
得到的特征矩阵应该就是弱分类器训练所需要的了吧?
我一直没有找到如何对这么多的特征进行提取的说明。或者我根本就已经完全理解错误? 展开
1个回答
2011-05-19
展开全部
如果你是用matlab实现程序:
1 特征可以进行采样 有均匀采样 downsample(I,16)表示对数组I进行16倍下采样 和非均匀采样PCA
2 你可以做一个cell来存贮特征 每一张图的特征存在一个cell的单元里
3 弱分类器是针对特征而言的
如果是用其他程序我就没有办法了
4 如果没记错adaboost的人脸检测算法 opencv里面已经有现成的了
1 特征可以进行采样 有均匀采样 downsample(I,16)表示对数组I进行16倍下采样 和非均匀采样PCA
2 你可以做一个cell来存贮特征 每一张图的特征存在一个cell的单元里
3 弱分类器是针对特征而言的
如果是用其他程序我就没有办法了
4 如果没记错adaboost的人脸检测算法 opencv里面已经有现成的了
追问
谢谢你的回答!
但是我还是不太明白。
我并不太了解采样,如果是一张一张地进行采样,应该没办法保证对每个图都采用了同一个特征吧?弱分类器要求的输入是每个图的同一个特征。
如果按你的方法,做一个cell来存贮特征,可是前提是特征矩阵太大已经,完全放不下,用cell是不是不能解决这个问题呀?
不好意思,我是初学者,所以不太会哈。
追答
1你应该是先对图进行特征提取,若提取的特征是I,例如I=[1,2,3,4,5,6,7,8,9,10],若I1=downsample(I,3),那么I1=[1,5,9]就是这样隔几个取一个值,如果你的特征维数很高,这样采样应该不会太影响结果
2 一张图的特征能有多长?例如你有N张图片
for 1:N%逐张存储特征
get_feature;%提取特征,设提取的特征为I
feature{};
feature=[feature,{I}];
就是这么存cell,我曾经做了一个特征 是65000维的向量 ,有1000来幅图 都没问题 你应该也没问题吧
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询