Hiển thị hình ảnh bằng OpenCV

opencv
image-processing
python

(Trần Nho Đức) #1

Em có một đoạn code thế này :

import cv2
import numpy as np
pinkI = cv2.imread("dog.jpg")
cv2.namedWindow('image', cv2.WINDOW_NORMAL)
cv2.imshow('image', pinkI)

Em đã thử nhiều cách nhưng mà hình ảnh chỉ hiện được một góc thôi và nó không fit vừa vặn được
Nên em muốn hỏi mọi người xem làm sao để hiện thị hình ảnh vừa khung hình mà hiện toàn bộ ảnh với lại có thể chỉnh kích thước của nó lại được

Em cảm ơn ạ !


(HelloWorld) #2

Do cái flag này của bạn

cv2.WINDOW_NORMAL

1 số flag khác

WINDOW_NORMAL
the user can resize the window (no constraint) / also use to switch a fullscreen window to a normal size.

WINDOW_AUTOSIZE
the user cannot resize the window, the size is constrainted by the image displayed.

WINDOW_OPENGL
window with opengl support.

WINDOW_FULLSCREEN
change the window to fullscreen.

WINDOW_FREERATIO
the image expends as much as it can (no ratio constraint).

WINDOW_KEEPRATIO
the ratio of the image is respected.

Để ảnh vừa khung thì bạn resize lại ảnh trước khi đọc và hiển thị. Vì màn hình của bạn có độ phân giải bé hơn độ phân giải của ảnh. Hoặc code đoạn chương trình check size ảnh và resize lại sao cho tỉ lệ của nó < tỉ lệ màn mình
Muốn resize cái cửa sổ hiển thị ảnh thì dùng hàm resizeWindow

Bạn có thể xem thêm tài liệu tại trang chủ

https://docs.opencv.org/


83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?