当前位置: 首页 > news >正文

MATLAB图像处理:几何变换详解(裁剪、旋转、缩放)

图像几何变换是图像处理的基础操作,适用于图像增强、数据增强(深度学习)、目标检测等场景。本文将详细讲解 图像裁剪(ROI提取)旋转(角度调整)缩放(尺寸调整) 的实现方法,并提供 MATLAB 代码示例和常见问题解决思路。

1. 图像裁剪:精准提取感兴趣区域 (ROI)

图像裁剪通过截取图像的某一部分,聚焦关键区域,减少无关信息的干扰。

1.1 手动交互框选

使用 imcrop 函数直接交互式选择区域:

img = imread('peppers.png');
figure; imshow(img);
cropped_img = imcrop;  % 鼠标框选区域后自动确认
figure; imshow(cropped_img);

1.2 坐标编程裁剪

指定矩形区域的左上角坐标和宽高:

% 裁剪位置:(x_min, y_min),宽度 width,高度 height
x_min = 100; y_min = 50; 
width = 200; height = 150;
rect = [x_min, y_min, width, height];  
cropped_program = imcrop(img, rect); 

注意点:

  • MATLAB 图像的坐标原点在左上角,x 为列方向,y 为行方向。
  • 裁剪区域须在图像范围内(可通过 size(img) 获取图像尺寸

2. 图像旋转:角度调整与无黑边处理

图像旋转常用于校正拍摄角度偏差或生成数据增强样本。

2.1 基本旋转:指定角度与插值方法
% 参数说明:
% img: 输入图像
% 45: 旋转角度(正值为逆时针)
% 'bilinear': 双线性插值(其他选项:'nearest', 'bicubic')
% 'crop': 裁剪旋转后图像,维持原始尺寸
rotated_img = imrotate(img, 45, 'bilinear', 'crop');
figure; imshow(rotated_img);

2.2 消除黑边:自动填充或扩展图像

旋转后图像超出原图范围的区域默认填充黑色(0)。可通过以下方式优化:

  • 使用 'loose' 参数保留完整旋转结果

 

3. 图像缩放:智能调整大小

缩放操作改变图像分辨率,需要权衡清晰度与计算效率。常见场景如缩略图生成、适配显示设备。

3.1 固定比例缩放
scale_factor = 0.5;  % 缩小到原图的 50%
scaled_img = imresize(img, scale_factor); 

3.2 指定目标尺寸
target_size = [300, 400];  % [行数, 列数]
scaled_target = imresize(img, target_size); 

% 保持宽高比(根据宽度自适应高度)
target_width = 200; 
[height, width, ~] = size(img);
scaled_fixed_width = imresize(img, [NaN, target_width]);  % NaN 表示自动计算

3.3 插值方式对比
  • 'nearest' 最近邻插值:速度快,但锯齿明显。
  • 'bilinear' 双线性插值:平滑效果较好(默认)。
  • 'bicubic' 双三次插值:更精细,但计算量大。
% 对比不同缩放的模糊程度
scaled_nearest = imresize(img, 0.2, 'nearest');
scaled_bicubic = imresize(img, 0.2, 'bicubic');
montage({scaled_nearest, scaled_bicubic}, 'Size', [1 2]);

 

操作核心函数关键参数适用场景
裁剪imcrop坐标或交互框提取重点区域
旋转imrotate角度、插值方法方向校正
缩放imresize缩放因子、目标尺寸分辨率调整

相关文章:

  • C++ 设计模式-抽象工厂
  • Vision Transformer:打破CNN垄断,全局注意力机制重塑计算机视觉范式
  • 网络安全防范课后参考答案
  • Python爬虫实战:股票分时数据抓取与存储 (1)
  • 设计模式-模版方法
  • 【stm32f407hal库】定时器定时功能
  • web自动化-浏览器驱动下载
  • Linux Mem -- Where the mte store and check in the real hardware platform
  • html css js网页制作成品——HTML+CSS+js茉酸奶的茶网页设计(5页)附源码
  • C++基础知识(三)之结构体、共同体、枚举、引用、函数重载
  • MS08067练武场--WP
  • GBD研究——美国州级地图(附资源)
  • TDengine 客户端连接工具 taos-Cli
  • 盛铂科技 SMF106 低相位噪声贴片式频率综合器模块
  • xfeat paper笔记
  • 国自然专项项目申请:AI赋能的急性心肌梗死预警研究|基金申请·25-02-14
  • 第J2周:ResNet50V2算法实战与解析
  • 二叉树详解
  • Springboot整合ES
  • 【NLP251】命名实体识别常用模块(基于Transformer分类)
  • 曾犯强奸罪教师出狱后办教培机构?柳州鱼峰区教育局回应
  • 鸿海下调全年营收展望:AI服务器业务强劲,预计今年营收增超50%
  • 终于越过萨巴伦卡这座高山,郑钦文感谢自己的耐心和专注
  • 孙卫东会见巴基斯坦驻华大使:支持巴印两国实现全面持久停火
  • 重庆发布经济犯罪案件接报警电子地图,企业可查询导航属地经侦服务点
  • 演员黄晓明、金世佳进入上海戏剧学院2025年博士研究生复试名单