参考教材内容+自己查阅资料,参考教材内容+自己查阅资料,编写MATLAB程序,创建一幅240×320的RGB彩色图像,图像中心是一个大小为100×100的红色正方形,周围是黑色。
时间: 2024-10-22 13:12:08 浏览: 17
在MATLAB中,你可以使用`imrect`函数绘制矩形,并通过循环填充颜色来实现这个任务。这里是一个简单的步骤:
首先,我们需要导入`imshow`函数来显示图像,以及一些基本的绘图工具箱函数。
```matlab
% 导入必要的库
if ~isToolboxAvailable('Image Processing Toolbox')
error('Image Processing Toolbox is required for this operation.');
end
```
然后,我们创建一个全黑的240x320像素的矩阵,并设置图像的背景为黑色。
```matlab
% 创建一个240x320的全零矩阵作为图像的基础
img = zeros(240, 320, 3); % RGB图像,三维数组
img(:, :, 1) = img(:, :, 2) = img(:, :, 3) = 0; % 黑色背景,所有通道都是0
```
接下来,我们将在图像中心绘制一个红色的正方形。先找到正方形的位置:
```matlab
% 定义正方形的中心位置和大小
square_center = floor(size(img)/2);
square_size = 100;
% 使用imrect函数画出红色正方形
[x, y] = imrect(square_center(1)-50:square_center(1)+49, ...
square_center(2)-50:square_center(2)+49, ...
'FaceColor', 'red');
```
注意,由于`imrect`函数返回的是区域的边界坐标,所以我们需要稍微调整一下位置使其刚好位于正方形中心。
最后,显示结果:
```matlab
% 显示图片
imshow(img)
title('Red Square in a Black Background')
```
阅读全文