matlab手动从整体图像中截取图像
时间: 2024-09-06 17:04:54 浏览: 41
图像局部提取并保存的Matlab代码实现
5星 · 资源好评率100%
在MATLAB中,你可以使用`imcrop`函数来手动从整个图像中截取图像区域。这个函数的基本语法如下:
```matlab
cropped_image = imcrop(original_image, [start_row start_col size_row size_col])
```
这里:
- `original_image`是你想要从中裁剪的原始图像。
- `[start_row start_col]`是一对坐标,表示从原图开始裁剪的位置,行从0开始计数,列同样。
- `size_row` 和 `size_col` 分别指定你想要裁剪出的新图像的高度和宽度。
例如,如果你想要裁剪原图的左上角200x200像素的部分,你可以这样做:
```matlab
cropped_img = imcrop(original_img, [0 0 200 200]);
```
如果你想根据鼠标点击位置来选择裁剪区域,可以使用交互式工具如`imrect`或`inputdlg`配合`imcrop`,如下所示:
```matlab
% 获取用户点击的四个点
[rows, cols] = ginput(4);
% 创建矩形区域
crop_rectangle = [min(rows) min(cols), max(rows) max(cols)];
% 裁剪图片
cropped_img = imcrop(original_img, crop_rectangle);
```
阅读全文