资源简介
图像显著性检测,用Saliency算法获得能量图,显示图片的显著性区域
同时显示HSL通道的显著图
代码片段和文件信息
// Saliency.cpp: implementation of the Saliency class.
//
//////////////////////////////////////////////////////////////////////
//===========================================================================
// Copyright (c) 2009 Radhakrishna Achanta [EPFL]
// All Rights Reserved
//===========================================================================
#include “Saliency.h“
#include
#include
#include
using namespace cv;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
Saliency::Saliency()
{
}
Saliency::~Saliency()
{
}
//===========================================================================
/// RGB2LAB
//===========================================================================
void Saliency::RGB2LAB(
const vector& ubuff
vector& lvec
vector& avec
vector& bvec)
{
int sz = ubuff.size();
lvec.resize(sz);
avec.resize(sz);
bvec.resize(sz);
for (int j = 0; j < sz; j++)
{
int r = (ubuff[j] >> 16) & 0xFF;
int g = (ubuff[j] >> 8) & 0xFF;
int b = (ubuff[j]) & 0xFF;
double xval = 0.412453 * r + 0.357580 * g + 0.180423 * b;
double yval = 0.212671 * r + 0.715160 * g + 0.072169 * b;
double zVal = 0.019334 * r + 0.119193 * g + 0.950227 * b;
xval /= (255.0 * 0.950456);
yval /= 255.0;
zVal /= (255.0 * 1.088754);
double fX fY fZ;
double lval aval bval;
if (yval > 0.008856)
{
fY = pow(yval 1.0 / 3.0);
lval = 116.0 * fY - 16.0;
}
else
{
fY = 7.787 * yval + 16.0 / 116.0;
lval = 903.3 * yval;
}
if (xval > 0.008856)
fX = pow(xval 1.0 / 3.0);
else
fX = 7.787 * xval + 16.0 / 116.0;
if (zVal > 0.008856)
fZ = pow(zVal 1.0 / 3.0);
else
fZ = 7.787 * zVal + 16.0 / 116.0;
aval = 500.0 * (fX - fY) + 128.0;
bval = 200.0 * (fY - fZ) + 128.0;
lvec[j] = lval;
avec[j] = aval;
bvec[j] = bval;
}
}
//==============================================================================
/// GaussianSmooth
///
/// Blur an image with a separable binomial kernel passed in.
//==============================================================================
void Saliency::GaussianSmooth(
const vector& inputImg
const int& width
const int& height
const vector& kernel
vector& smoothImg)
{
int center = kernel.size() / 2;
int sz = width*height;
smoothImg.clear();
smoothImg.resize(sz);
vector tempim(sz);
int rows = height;
int cols = width;
//--------------------------------------------------------------------------
// Blur in the x direction.
//---------------------------------------------------------------------------
{int index(0);
for (int r = 0; r < rows; r++)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-11-14 20:07 Saliency\
文件 34294 2011-07-11 15:20 Saliency\16.jpg
目录 0 2016-10-23 13:26 Saliency\Debug\
文件 95744 2016-10-23 13:27 Saliency\Debug\Saliency.exe
文件 511084 2016-10-23 13:27 Saliency\Debug\Saliency.ilk
文件 1355776 2016-10-23 13:27 Saliency\Debug\Saliency.pdb
目录 0 2016-10-23 13:27 Saliency\Release\
文件 17920 2016-10-23 19:19 Saliency\Release\Saliency.exe
文件 798720 2016-10-23 19:19 Saliency\Release\Saliency.pdb
目录 0 2016-10-23 13:49 Saliency\Saliency\
文件 11010048 2016-11-14 20:07 Saliency\Saliency.sdf
文件 970 2016-10-23 13:20 Saliency\Saliency.sln
文件 24064 2016-11-14 20:07 Saliency\Saliency.v12.suo
文件 34294 2011-07-11 15:20 Saliency\Saliency\16.jpg
目录 0 2016-10-23 13:27 Saliency\Saliency\Debug\
文件 2254 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.log
文件 233600 2016-10-23 13:26 Saliency\Saliency\Debug\Saliency.obj
目录 0 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\
文件 1302 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\cl.command.1.tlog
文件 15370 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\CL.read.1.tlog
文件 1400 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\CL.write.1.tlog
文件 3010 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\li
文件 6582 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\li
文件 564 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\li
文件 174 2016-10-23 13:27 Saliency\Saliency\Debug\Saliency.tlog\Saliency.lastbuildstate
文件 229815 2016-10-23 13:27 Saliency\Saliency\Debug\Source.obj
文件 470016 2016-10-23 13:27 Saliency\Saliency\Debug\vc120.idb
文件 659456 2016-10-23 13:27 Saliency\Saliency\Debug\vc120.pdb
文件 18279 2016-10-30 15:46 Saliency\Saliency\new16.jpg
文件 18866 2016-10-30 15:46 Saliency\Saliency\new4a.jpg
文件 18434 2016-10-30 15:46 Saliency\Saliency\new4b.jpg
............此处省略21个文件信息
- 上一篇:MCS-51单片机原理与应用(C语言版.
- 下一篇:用c++做的简单火车订票系统
相关资源
- 运动车辆检测跟踪源码,可运行
- VS-Vrep-813Vrep.rar
- 头发检测C++代码
- opencv 保存录像
- 与opencv有关的图像检索的
- 无误的广角摄像头OPENCV矫正程序2018
- Learning OpenCV 3英文版
- VC++ OPENCV CT简单重建实现及PPT
- opencv 车牌识别 vs2010 mfc
- 利用MFC的Picture控件显示图像和视频
- 指针式仪表识别(MFC)
- 基于MFC的OpenCV图像显示并标记ROI
- OpenCV 4 Cookbook_ C++ 4th Edition.pdf Robert
- opencv摄像机名称及id获取,以及串口名
- OpenCV和MFC的+界面程序+各种图像处理操
- 基于OpenCV3( Python / C++ ) 的车道检测
- MFC+VS2013+OPENCV3.0打开摄像头,拍照并处
- 基于MFC的OpenCV视频图像显示小工具
- 学习OpenCV(中文版)252853
- VS2017C++windows桌面应用程序项目OpenCV及
- 基于C++的基础车牌识别
- 基于opencv的C++车牌识别
- 基于OpenCV的运动目标检测与跟踪
- MFC下利用OPENCV添加显示图片
- C#+opencv拍照和图片对比
- 基于OpenCV和MFC实现布匹瑕疵检测.rar
- opencv SVM图像分类工程文件
- C++运用opencv进行二维多张全景图拼接
- 基于opencv和MFC的多功能视频、图像处
- opencv-3.4.6.zip
评论
共有 条评论