I would like to get the Image size in python,as I do it with c++.
int w = src->width;
printf("%d", 'w');
Use the function GetSize from the module cv with your image as parameter. It returns width, height as a tuple with 2 elements:
width, height = cv.GetSize(src)
from this tutorial: https://www.tutorialkart.com/opencv/python/opencv-python-get-image-size/
import cv2
# read image
img = cv2.imread('/home/ubuntu/Walnut.jpg', cv2.IMREAD_UNCHANGED)
# get dimensions of image
dimensions = img.shape
# height, width, number of channels in image
height = img.shape[0]
width = img.shape[1]
channels = img.shape[2]
from this other tutorial: https://www.pyimagesearch.com/2018/07/19/opencv-tutorial-a-guide-to-learn-opencv/
image = cv2.imread("jp.png")
(h, w, d) = image.shape
Please double check things before posting answers.
Here is a method that returns the image dimensions:
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)
You can use image.shape to get the dimensions of the image. It returns 3 values. The first value is height of an image, the second is width, and the last one is number of channels. You don't need the last value here so you can use below code to get height and width of image:
height, width = src.shape[:2]
print(width, height)
->syntax for? Never seen it before... - Yatharth Agarwal.)? - Yatharth Agarwala->bis the equivalent of(*a).b- Gabi Purcaru*operator do then? in Python it unpacked a tuple or list... - Yatharth Agarwal