-
大小: 11KB文件类型: .rar金币: 1下载: 0 次发布日期: 2021-06-07
- 语言: C/C++
- 标签: 图像分割 分割 Graph-Based Image Segmentation
资源简介
C++版源代码,分享给大家,Graph-Based Segmentation 是经典的图像分割算法,作者Felzenszwalb也是提出DPM算法的大牛。该算法是基于图的贪心聚类算法,实现简单,速度比较快,精度也还行。
代码片段和文件信息
// graghbasedImageSegmentation.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include
#include
#include “opencv2/opencv.hpp“
#include “segmentimage.h“
using namespace std;
using namespace cv;
int _tmain(int argc _TCHAR* argv[])
{
//const char* imagename = “G:\\Pic\\101087_big.jpg“;
const char* imagename = “D:/textDetection/dataset/icdar2013/Challenge2_Training_Task12_Images/127.jpg“;
//const char* imagename = “grain.bmp“;
//const char* imagename = “person_272.png“;
//从文件中读入图像
Mat img = imread(imagename);
//如果读入图像失败
if (img.empty())
{
fprintf(stderr “Can not load image %s\n“ imagename);
return -1;
}
//显示图像
imshow(“image“ img);
//cvtColor(img img CV_BGR2Lab);// May be using lab color space will be better
Mat gray;
cvtColor(img gray CV_BGR2GRAY);
img.convertTo(img CV_32FC3);
float sigma = 0.5;
float k = 500;
int min_size = 100;
int num_ccs;
clock_t tt = clock();
Mat result = segment_image(img sigma k min_size &num_ccs);
tt = clock() - tt;
float process_time = (float)tt / CLOCKS_PER_SEC;
cout << “get “ << num_ccs << “ components“ << endl;
cout << “process time: “ << process_time << endl;
imshow(“process result“ result);
cvtColor(gray gray CV_GRAY2BGR);
imshow(“overlay result“ gray*0.25 + result*0.75);
//此函数等待按键,按键盘任意键就返回
waitKey();
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1473 2017-12-26 22:20 graghba
文件 9638 2017-12-26 19:54 graghba
文件 1799 2017-12-26 19:54 graghba
文件 1812 2017-12-26 19:46 misc.h
文件 1650 2017-12-26 19:42 ReadMe.txt
文件 4849 2017-12-26 19:55 segment_image.cpp
文件 92 2017-12-26 19:44 segment_image.h
文件 3334 2017-12-26 19:52 segmentgraph.h
文件 453 2017-12-26 19:53 segmentimage.h
文件 233 2017-12-26 19:42 stdafx.cpp
文件 234 2017-12-26 19:42 stdafx.h
文件 236 2017-12-26 19:42 targetver.h
文件 2384 2017-12-26 19:52 disjoint-set.h
----------- --------- ---------- ----- ----
28187 13
- 上一篇:MFC程序设计,使用鼠标画图程序,包括多变形的画法
- 下一篇:MPEG4视频压缩
相关资源
- 基于改进的种子区域生长法的图像分
- 分水岭图像分割算法 c++实现
- fisher最优分割
- 图像分割和边缘检测完全C语言源代码
- mfc 窗口分割实现多视图切换
- 激光雷达点云地平面校准 地面分割
- 302_规格划分矩形.cpp
- 黄金分割法C语言程序运行过无误的
- SLICSuperpixels 超像素分割图 C++代码
- OpenCV种子填充实现彩色图像分割的代
- 阈值分割和区域生长vc++代码
- MFC读取txt,分割显示到listctrl控件上
- 使用c语言实现基于图的图像分割代码
- 激光雷达数据读取、显示、分割、直
- CohenSutherland裁剪算法和中点分割裁剪
- 基于MFC OpenGL读取obj文件并以双视图显
- 根据原图和二值图得到分割彩图
- 图像分割 grabcut C++版本的源码,包含
- VC++和OpenGL实现八叉树分割
- 车牌识别系统从车牌定位、字符分割
- C++实战源码-指定符号分割字符串
- C++ 文件分割器
- C++控制台地震勘探观测系统数据文件
- Opencv+VC实现分水岭分割图像
- SLIC超像素分割算法OpenCV Mat 接口
- FLICM算法C_Opencv代码,,可用于做图像
- Otsu双阈值分割opencv
- 四叉树分割
- 求函数极值各种算法的c语言实现
- mfc窗口分割和树形控件的结合使用
评论
共有 条评论