50

C ++で行うように、Pythonで画像サイズを取得したいと思います。

int w = src->width;
printf("%d", 'w');
4

8 に答える 8

144

openCV と numpy を使用すると、次のように簡単になります。

import cv2

img = cv2.imread('path/to/img',0)
height, width = img.shape[:2]
于 2014-04-21T22:34:08.277 に答える
22

画像をパラメーターとしてGetSizeモジュールの関数を使用します。cv幅、高さを 2 つの要素を持つタプルとして返します。

width, height = cv.GetSize(src)
于 2012-10-23T15:03:57.783 に答える
18

numpy.size() を使用して同じことを行います。

import numpy as np
import cv2

image = cv2.imread('image.jpg')
height = np.size(image, 0)
width = np.size(image, 1)
于 2015-11-15T21:41:27.277 に答える
1

画像の寸法を返すメソッドは次のとおりです。

from PIL import Image
import os

def get_image_dimensions(imagefile):
    """
    Helper function that returns the image dimentions

    :param: imagefile str (path to image)
    :return dict (of the form: {width:<int>, height=<int>, size_bytes=<size_bytes>)
    """
    # Inline import for PIL because it is not a common library
    with Image.open(imagefile) as img:
        # Calculate the width and hight of an image
        width, height = img.size

    # calculat ethe size in bytes
    size_bytes = os.path.getsize(imagefile)

    return dict(width=width, height=height, size_bytes=size_bytes)
于 2018-08-12T10:05:26.930 に答える
0

を使用image.shapeして、画像の寸法を取得できます。3 つの値を返します。最初の値は画像の高さ、2 番目は幅、最後の値はチャンネル数です。ここでは最後の値は必要ないため、以下のコードを使用して画像の高さと幅を取得できます。

height, width = src.shape[:2]
print(width, height)
于 2021-01-03T09:19:42.210 に答える