opencv视频相似度检测

source code 位置:

samples/cpp/tutorial_code/gpu/gpu-basics-similarity/gpu-basics-similarity

The PSNR (peak SNR) returns a float number, that if the two inputs are similar between 30 and 50 (higher is better).

\begin{align}\mathit{PSNR} &= 10 \cdot \log_{10} \left( \frac{\mathit{MAX}_I^2}{\mathit{MSE}} \right)\\ &= 20 \cdot \log_{10} \left( \frac{\mathit{MAX}_I}{\sqrt{\mathit{MSE}}} \right)\\ &= 20 \cdot \log_{10} \left( {\mathit{MAX}_I} \right) - 10 \cdot \log_{10} \left( {{\mathit{MSE}}} \right)\end{align}

The SSIM returns the MSSIM of the images. This is too a float number between zero and one (higher is better), however we have one for each channel. Therefore, we return a Scalar OpenCV data structure. 

MSSIM(Mean Structure Similitary Index) is a measure of distortion static images. It s comparing distorted image with reference image and as the result return value between 0 and 1, value 1 is only reachable in the case of two identical sets of data.

\hbox{SSIM}(x,y) = \frac{(2\mu_x\mu_y + c_1)(2\sigma_{xy} + c_2)}{(\mu_x^2 + \mu_y^2 + c_1)(\sigma_x^2 + \sigma_y^2 + c_2)}

see also: http://opencv.itseez.com/doc/tutorials/gpu/gpu-basics-similarity/gpu-basics-similarity.html

posted @ 2012-05-16 23:20  joywelt  阅读(1210)  评论(0编辑  收藏  举报