这道题是Google的面试题,参照WigglySortI,本质就是一个坐标映射,只是中位数有等号,映射时候需要小心,博主第一版代码直接用Sort排序,代码击败65.8%,然后参照大牛代码,使用三路快排,速度已经提起来了。和大牛的代码不同的是,大牛采用高大上的宏函数做坐标映射,博主比较笨,理解那个映射公式花了些时间,索性就用了第一版代码的坐标映射,单独写了一个for循环。大牛代码103ms,博主代码102ms,所以坐标映射部分开销是差不多的,可见代码核心还是在三路快排(三指针)上。…

        了解OpenCV的同学应该都对IPP加速有所耳闻,IPP库是Intel的加速库,其中集成了多种高性能的操作,基于CPU庞大复杂的指令系统,对程序做并行优化非常有帮助(有点类似于DSP上的数学库),相比之下,另一种并行加速方式openmp就显得捉襟见肘了。这篇博客将帮助我们配置IPP库。…

sgs2        这篇博客介绍博主事先的CSEO超像素分割方法,CSEO法是目前已知最快的超像素分割算法,可以在640*480*3大小的图像上达到38ms的速度(使用单核CPU@2.5GHz),并且分割区域数与时间无关,是目前超像素分割领域的state-of-art。

        OpenCV内封装了主流的SLIC算法,当然,无法实时。这篇博客由于客观原因不提供源码、原理解释,只提供一些论文索引和博主的实验结果,仅供研究者参考。

        博主使用Kinect摄像头采集图像数据,将采集的四通道数据转换为三通道数据,然后缩放至920*540(原图为1080p),采集图像和超像素分割在同一个线程中,最终速度为48ms,如果使用640*480,将算法部分从主线程中分离出来,达到论文中所说的38ms是可能的。