一张这样的 numpy 矩阵,圆的直径等于正方形变长,我想把圆外的区域都置为 0 或者一个边界值,python 有什么有效的方法吗?
谢谢各位!
1
Hzzone OP 更新一下解决方法:
``` width, height = pixel_array.shape y, x = np.ogrid[0:width,0:height] centerx, centery = (width/2, height/2) # print(x, y) mask = ((y - centery)**2 + (x - centerx)**2) > (width/2)**2 print(mask.shape) pixel_array[mask] = YOUR_BOUNDARY plt.imshow(pixel_array) plt.show() plt.hist(pixel_array.flatten(), bins=80, color='c') plt.show() ``` |