%作者:田思洋
%日期:2016年3月
%函数说明:读取通过MATLAB Training Image标记并保存的labelingSession数据,将
%这些标记的ROI区域转换成bmp图片并存储。图片的名称采用了时间+序号的存储方式,
%所以多次读取这一函数并将结果存入同一文件夹也不会造成命名冲突
%示例调用方式 Save_Raw_Samples_ROIs('E:\TSY\Code\labelingSession.mat','G:\Samples\2016-3-5');
%**************************************************************************
%第一个参数:通过MATLAB Training Image
%Labeler工具导出的labelingSession数据,为mat格式,这里只需输入其全路径即可,如'C:\labelingSession.mat'
%第二个参数:为待导出的文件存储的文件夹,如'G:\Samples\2016-3-1'
%所有标记过的图像从0开始索引为文件名进行存储
function Save_Raw_Samples_ROIs(labelingsession_data_path,output_path)
roi_info = load(labelingsession_data_path);
image_counts = size(roi_info.labelingSession.ImageSet.ROIBoundingBoxes,2);%struct结构与普通矩阵的索引方式不同,第一个为列,第二个为行
roi_index = 0;
pause(1);%延时1s,确保不会出现重命名
current_time = datestr(now,'yyyy-mm-dd-HH-MM-SS_');
if ~isdir(output_path) %判断路径是否存在
mkdir(output_path);
end
for i = 1:image_counts%对每张图依次处理,提取ROI区域
image_info = roi_info.labelingSession.ImageSet.ROIBoundingBoxes(i);
image = imread(image_info.imageFilename);
box_rows = size(image_info.objectBoundingBoxes,1);
for j = 1:box_rows%对每张图的所有ROI区域进行提取
box =image_info.objectBoundingBoxes(j,:);
cropped_roi = imcrop(image,box);
%imshow(cropped_roi);
image_full_name = strcat(output_path,'\',current_time,num2str(roi_index),'.bmp');
imwrite(cropped_roi,image_full_name);
roi_index=roi_index + 1;
end
end
没有合适的资源?快使用搜索试试~ 我知道了~
图像样本标记
共2个文件
m:2个
5星 · 超过95%的资源 需积分: 33 199 下载量 33 浏览量
2016-03-06
12:05:08
上传
评论 4
收藏 1KB ZIP 举报
温馨提示
利用MATLAB的Training Image Labeler 工具来标记样本并导出图像
资源推荐
资源详情
资源评论
收起资源包目录
图像样本标记脚本-MATLAB.zip (2个子文件)
save_raw_sample_images.m 419B
Save_Raw_Samples_ROIs.m 2KB
共 2 条
- 1
资源评论
- z10311590752018-04-18可以,不错
- 金乃高2018-04-11ok不错好可用
- 无敌三角猫2018-10-09不错,可以使用
史丹利复合田
- 粉丝: 1175
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功