You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MATLAB图像矩形掩码代码转换为Python实现求助

MATLAB转Python代码实现

这段MATLAB代码的作用是:创建一个600行×800列的全零矩阵,然后以矩阵的(301,401)位置为中心,填充一个边长为2*width+1的全1正方形区域。

对应的Python实现需要用numpy库完成矩阵操作,代码如下:

import numpy as np

width = 50
# 创建600行、800列的全零数组
Fs = np.zeros((600, 800))
# 调整索引范围(Python为0起始索引,MATLAB是1起始,需对应转换)
Fs[300-width : 301+width, 400-width : 401+width] = 1

关键说明

  • MATLAB的301-width:1:301+width对应Python的300-width : 301+width:因为Python切片是左闭右开规则,且索引从0开始,所以原MATLAB的起始索引需减1,结束索引直接使用MATLAB的终止值即可覆盖对应区域。
  • 直接赋值1比单独创建ones数组更高效,numpy会自动将数值广播到指定的矩阵区域。

内容的提问来源于stack exchange,提问作者User123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 20:12:02