モジュール間で画像データを送信しようとしています。
以下はうまくいきます:
def process_image(pdf_path, page_dimensions):
pdf_path = get_pdf(pdf_path, False)
pdf_name = os.path.basename(pdf_path)
with tempfile.TemporaryDirectory() as path:
conversion_time = time.time()
chart_images = convert_from_path(
pdf_path=pdf_path,
dpi=300,
fmt="jpg",
output_file=os.path.basename(str(pdf_path)).split(".")[0],
output_folder=path,
use_pdftocairo=False,
paths_only=True,
thread_count=8,
)
pg_dim, pg_image_path = page_dimensions[0], chart_images[0]
pg_image = cv2.imread(pg_image_path, cv2.IMREAD_UNCHANGED)
pg_image = cv2.resize(pg_image, (pg_dim[1], pg_dim[2]))
return pg_image
この関数の結果 ( pg_image
) は、私の Detectron2 モデルへの入力として取得すると正常に機能します。
ただし、pg_image.tolist()
受信時に np 配列を送信して変換し直し ( np.array(pg_image)
)、それを Detectron2 モデルに送信すると、次のエラーが発生し続けます。
RuntimeError: "upsample_bilinear2d_channels_last" not implemented for 'Long'
では、np配列をリストに変換し、データを変更して元に戻す場合は?