1. ホーム
  2. python

[解決済み] OpenCV & Python - 画像が大きすぎて表示できない

2023-01-09 03:51:15

質問

6400×3200の画像があるのですが、私の画面は1280×800です。したがって、画像は表示用にリサイズする必要があります。私はPythonとOpenCV 2.4.9を使用しています。 によると OpenCV ドキュメント ,

画面の解像度よりも大きな画像を表示する必要がある場合、imshowの前にnamedWindow("", WINDOW_NORMAL)を呼び出す必要があります。

私がやっているのはそれなのですが、画像が画面にフィットせず、大きすぎるため一部しか表示されません。cv2.resizeWindowも試してみましたが、違いはありません。

import cv2
cv2.namedWindow("output", cv2.WINDOW_NORMAL)        # Create window with freedom of dimensions
# cv2.resizeWindow("output", 400, 300)              # Resize window to specified dimensions
im = cv2.imread("earth.jpg")                        # Read image
cv2.imshow("output", im)                            # Show image
cv2.waitKey(0)                                      # Display the image infinitely until any keypress

どのように解決するのですか?

自動的な解決(画面に自動的にフィットする)を期待していたのですが、リサイズでも解決しました。

import cv2
cv2.namedWindow("output", cv2.WINDOW_NORMAL)    # Create window with freedom of dimensions
im = cv2.imread("earth.jpg")                    # Read image
imS = cv2.resize(im, (960, 540))                # Resize image
cv2.imshow("output", imS)                       # Show image
cv2.waitKey(0)                                  # Display the image infinitely until any keypress