python - 具有 3 个点的仿射变换和合并图像
问题描述
我正在编写一个 Python 程序,该程序显示 2 个彼此相邻的热(低分辨率)无人机镜头。然后用户在两张图片上选择 3 个点,之后第二张图片应该被转换并与第一张合并。在接下来的步骤中,程序应该显示合并后的图片以及旁边航班的第三张图片,等等。
目前我正在寻找对图像进行转换和合并的方法。
我正在考虑将图像读取为数组(列表列表(=行)),使用转换公式手动计算每个像素的新位置(目前我已经用 OpenCV 计算了转换矩阵),创建一个新的空列表列表并将像素值粘贴到新列表列表中的相应位置。之后,我想用零填充所有空的“单元格”。
为了合并它们,我将再次创建一个新的列表列表并遍历两个图像并获取每个单元格的最大值或平均值,并用零填充剩余的空“单元格”。然后,我将在窗口中显示这个生成的合并图像,旁边是我提到的飞行中的以下图像。
在计算像素值的新坐标之前,我仍然不知道如何预测列表列表的大小。此外,这种方法似乎有点冗长且效率低下,所以我想知道是否有更简单的方法可以使用 Wand 或 OpenCV(或任何其他库)来做到这一点。
解决方案
推荐阅读
- shell - 从 shell 脚本运行 spring boot 并在控制台上打印 URL
- clips - 剪辑中的农民困境
- php - PHP不会将变量放在链接中
- ios - UIAlertController 中子视图中的 UIProgressView 位置在不同设备上发生更改
- php - 如何将 PHP Prepared Statement 参数设置为 mysql 函数返回的输出
- html - 为什么粘性位置在子 div 中不起作用
- sql - 使用 PHPSpreadsheet 将 SQL 数据插入 Excel
- cocoa - 突出显示 NSPredicateEditor 中的选定行
- python - 将 pandas DataFrame 附加到带有固定标头的 csv
- python - 将文件上传到公共谷歌云存储桶