python - 随机复制一个矩形随机区域并将其粘贴到numpy中的另一个图像上
问题描述
我一直在尝试在 [128, 1024] 中复制一个具有宽度和高度的矩形随机区域,但有时我会遇到
---> 29 I_rcv[a:b, c:d] = dnr_patch
30 pyplot.imshow(I_rcv)
ValueError: could not broadcast input array from shape (425,91,3) into shape (959,91,3)
这是我的代码
rcv = "path/to/image/RCV.JPG"
dnr_1 = "path/to/image/DNR.JPG"
I_rcv = cv2.imread(rcv)
I_dnr = cv2.imread(dnr_1)
a = random.randint(0, min(I_dnr.shape[0] - 1024, I_rcv.shape[0] - 1024))
b = a + random.randint(1, 1024)
c = random.randint(0, min(I_dnr.shape[0] - 128, I_rcv.shape[0] - 128))
d = c + random.randint(1, 128)
dnr_patch = np.copy(I_dnr[a:b,c:d])
I_rcv[a:b, c:d] = dnr_patch
编辑:以下是变量值。图像是随机形状的,我需要选择供体图像,裁剪一个补丁并将其放置到接收器。
I_rcv: (3648, 2736, 3)
I_dnr: (2304, 3072, 3)
dnr_patch: (425, 91, 3)
解决方案
推荐阅读
- amazon-web-services - 使用 aws 进行多区域主动复制
- javascript - 光滑的滑块创建意外的行
- php - 在 laravel 的 gmail 中找不到图片
- sql - 使用带有多个条件的 REGEXP_LIKE 来匹配模式
- python - 是否可以使用网络抓取来获取正确的单词,然后单击单词下方的链接?
- laravel - Laravel - 使用“whereHas”获取嵌套关系
- python - 二元/一元谓词函数将所有对象与python中的所有其他对象进行交叉比较
- android - 如何使用 youtube API 在 android 应用中播放推荐的视频?
- localization - 如何在 Kentico 的管理界面中本地化单选按钮
- mysql - MariaDB:OPTIMIZE 上的键重复条目,没有重复