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

咨询m2stitch.stitch_images()函数的输入图像格式要求

m2stitch库stitch_images()函数的输入格式说明

核心格式要求

stitch_images()函数对images参数的格式有明确要求,需满足以下任一形式:

  • 4维numpy数组:维度顺序为 (N, H, W, C),其中:
    • N是待拼接的图像总数
    • H是单张图像的高度
    • W是单张图像的宽度
    • C是图像的通道数(灰度图为1,RGB图为3)
  • 列表形式:包含N个3维numpy数组,每个数组对应单张图像,shape为(H, W, C),且所有图像的shape必须完全一致

你的代码问题修正

  1. 数组创建错误:np.array(image1, image2, image3, image4)的写法不符合numpy规则,正确的创建方式是将图像放入列表中作为np.array的参数:
    images = np.array([image1, image2, image3, image4])
    
  2. rows/cols参数不匹配:你定义的rows = [0,1]和cols = [0,1]长度为2,但待拼接图像有4张,需要为每张图像单独指定对应的行、列索引(以2x2排列场景为例),修正后应为:
    rows = [0, 0, 1, 1]  # 第1、2张图像在第0行,第3、4张在第1行
    cols = [0, 1, 0, 1]  # 第1、3张图像在第0列,第2、4张在第1列
    

修正后的完整代码

import numpy as np
import pandas as pd
import m2stitch

# 加载单张图像
image1 = np.load(r'A61_20230123113809.npy')
image2 = np.load(r'A62_20230123113809.npy')
image3 = np.load(r'A63_20230123113809.npy')
image4 = np.load(r'A64_20230123113809.npy')

# 检查所有图像尺寸是否一致
assert image1.shape == image2.shape == image3.shape == image4.shape, "所有图像的尺寸和通道数必须完全一致"

# 创建符合要求的4维数组
images = np.array([image1, image2, image3, image4])

# 指定每张图像的行列索引(2x2排列)
rows = [0, 0, 1, 1]
cols = [0, 1, 0, 1]

# 执行拼接操作
result_df, _ = m2stitch.stitch_images(images, rows, cols, row_col_transpose=False)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 13:50:40