前几天在伯乐网上看到有转载相似图片搜索的文章,其实它的方法很简单,就是一篇图片,先做灰度化,resize,01化处理,在判断。出于专业敏感,我想是不是可以利用视频或者图像编码中的DCT变换,利用少量的空间存储大部分的有效信息,然后再比较,网上搜了搜,果然有这样的算法:phash phash算法有很多种,这里介绍一种基于DCT的phash算法。 图片指纹生成方法:
图片灰度化
图片缩放...
分类:
其他好文 时间:
2015-08-09 17:11:22
阅读次数:
213
这篇文章详细的介绍了H.264标准的DCT变换的原理及DCT变换公式的推导过程
分类:
其他好文 时间:
2015-07-26 09:40:26
阅读次数:
176
本文记录x264的 x264_slice_write()函数中调用的x264_macroblock_encode()的源代码。x264_macroblock_encode()对应着x264中的宏块编码模块。宏块编码模块主要完成了DCT变换和量化两个步骤。函数调用关系图宏块编码(Encode)部分的源代码在整个x264中的位置如下图所示。单击查看更清晰的图片宏块编码(Encode)部分的函数调用关系...
分类:
Web程序 时间:
2015-05-24 14:16:53
阅读次数:
218
本文简单分析x264的x264_slice_write()的源代码。x264_slice_write()是x264项目的核心,它完成了编码了一个Slice的工作。根据功能的不同,该函数可以分为滤波(Filter),分析(Analysis),宏块编码(Encode)和熵编码(Entropy Encoding)几个子模块。本文首先对x264_slice_write()进行总体的概括,在后续文章中将会对上述几个子模块展开进行分析。...
分类:
其他好文 时间:
2015-05-17 18:42:38
阅读次数:
570
1.傅立叶变换是时域到复频域的变换。为什么是复频域,是因为除了图象的频率还有相位信息。如果你只要频率信息,可以用离散 DCT变换。
小波变换太难了,我实在看不懂,形象的说就是一个滤波器组,可以提取不同频率的信息。频率提取了有什么用?比如网上传输的有些JPEG图像,是逐渐逐渐变清楚的,就是因为他们是从低频开始慢慢的传过来,直到高频传完后就变清楚了。艾,实际当然复杂多了,不太好说了。
2.小波...
分类:
其他好文 时间:
2015-05-05 12:34:35
阅读次数:
157
理论部分转载自这篇blog: http://blog.csdn.net/luoweifu/article/details/8214959 该blog给出的是java代码,我用c++将其实现了。
理论:
图像处理中常用的正交变换除了傅里叶变换外,还有其他一些有用的正交变换,其中离散余弦就是一种。离散余弦变换表示为DCT( Discrete Cosine Transformation),...
分类:
编程语言 时间:
2015-04-17 20:31:53
阅读次数:
249
DCT变换、DCT反变换、分块DCT变换欢迎转载,但请注明出处!一、引言 DCT变换的全称是离散余弦变换(Discrete Cosine Transform),主要用于将数据或图像的压缩,能够将空域的信号转换到频域上,具有良好的去相关性的性能。DCT变换本身是无损的,但是在图像编码等领域给接下来的量...
分类:
其他好文 时间:
2014-08-31 14:25:21
阅读次数:
290