[DIP] cv2.imshow 사용예

2024. 9. 16. 13:39·Programming/DIP
728x90
728x90

 

https://dsaint31.me/mkdocs_site/DIP/cv2/ch00/dip_0_00/#1-2-display-or-check-image-by-opencv

 

BME228

1. OpenCV를 통한 Image 다루기 (읽고 쓰기) 기본적으로 cv2를 이용하여 이미지를 읽어들이고, 저장하는 방법을 다룬다. 구체적인 함수는 다음과 같다. cv2.imread cv2.imshow cv2.imwrite 추가적으로 다루는 함

dsaint31.me


예제 코드

from skimage import data
import cv2

# skimage 라이브러리에서 고양이 테스트 이미지를 불러옴
cat = data.chelsea()  # Chelsea 테스트 이미지(고양이)를 로드
cat = cat[...,::-1]
print(f'{cat.shape=}')  # 이미지의 크기(shape)를 출력

# ---------------------
# 아래는 트랙바 콜백 함수의 예시 (주석 처리됨)
# def on_trackbar(val):
#     pass  # 트랙바 콜백 함수의 자리 표시자

# 이름이 지정된 창을 생성 (선택 사항) 및 창 크기 조정 가능
cv2.namedWindow('test_cat', cv2.WINDOW_NORMAL)  # WINDOW_NORMAL 플래그는 창 크기 조정을 허용
cv2.imshow('test_cat', cat)  # 'test_cat' 창에 고양이 이미지를 표시

# 선택적으로 트랙바 생성 (주석 처리됨)
# 이 트랙바는 이미지와의 상호작용 (예: 밝기 조정)을 가능하게 함
# cv2.createTrackbar("trackbar", "test_cat", 0, 100, on_trackbar)

# ESC 키나 창 닫기 이벤트가 발생할 때까지 창을 유지하는 무한 루프
while True:
    k = cv2.waitKey(10)  # 10밀리초마다 키 입력 대기
    if k & 0xFF == 27:  # ESC 키(ASCII 코드 27)가 입력되면 루프 종료
        break
    if cv2.getWindowProperty('test_cat', cv2.WND_PROP_VISIBLE) < 1:  # 창이 닫힌 경우
        break

# 루프 종료 후 모든 OpenCV 창을 닫음 (ESC 키나 창 닫기 이벤트 발생 시)
cv2.destroyAllWindows()

주요 요소 설명:

  • skimage.data.chelsea(): skimage 라이브러리에서 제공하는 고양이 이미지(테스트 이미지)를 로드
  • cv2.namedWindow: 지정된 이름의 창을 생성하고, cv2.WINDOW_NORMAL 플래그를 통해 창 크기 조정이 가능하도록 설정.
  • cv2.imshow: 지정된 창에 이미지를 표시.
  • cv2.waitKey(10): 10밀리초마다 키 입력을 대기하며, ESC 키나 창 닫기 이벤트가 발생하면 루프를 종료.
  • cv2.getWindowProperty: 창이 여전히 열려 있는지 확인하고, 닫힌 경우 루프를 종료.
  • cv2.destroyAllWindows(): 루프가 끝난 후 모든 OpenCV 창을 닫음.

같이 보면 좋은 자료들

2023.04.07 - [Programming/DIP] - [OpenCV] imshow 창설정 및 종료 처리 (x버튼 처리)

 

[OpenCV] imshow 창설정 및 종료 처리 (x버튼 처리)

imshow 창설정 및 종료 처리 (x버튼 처리)창 설정 관련 arguments 및 options cv2.namedWindow를 통해 미리 창에 대한 title을 지정하여 놓을 수 있음.cv2.namedWindow('image', cv2.WINDOW_NORMAL)# Using resizeWindow() : Below cod

dsaint31.tistory.com

https://dsaint31.me/mkdocs_site/DIP/cv2/ch00/dip_0_00/

 

BME228

1. OpenCV를 통한 Image 다루기 (읽고 쓰기) 기본적으로 cv2를 이용하여 이미지를 읽어들이고, 저장하는 방법을 다룬다. 구체적인 함수는 다음과 같다. cv2.imread cv2.imshow cv2.imwrite 추가적으로 다루는 함

dsaint31.me

 


 

'Programming > DIP' 카테고리의 다른 글

[CV] cv2.imread()  (4) 2024.09.16
[DIP] plt.imshow: matplotlib.pyplot  (1) 2024.09.16
[OpenCV] VideoCapture 사용법.  (0) 2024.09.11
[OpenCV] API Backend for VideoCapture  (0) 2024.09.11
[DIP] Hu Moment  (2) 2024.09.10
'Programming/DIP' 카테고리의 다른 글
  • [CV] cv2.imread()
  • [DIP] plt.imshow: matplotlib.pyplot
  • [OpenCV] VideoCapture 사용법.
  • [OpenCV] API Backend for VideoCapture
dsaint31x
dsaint31x
    반응형
    250x250
  • dsaint31x
    Dsaint31's blog
    dsaint31x
  • 전체
    오늘
    어제
    • 분류 전체보기 (740)
      • Private Life (13)
      • Programming (56)
        • DIP (104)
        • ML (26)
      • Computer (119)
        • CE (53)
        • ETC (33)
        • CUDA (3)
        • Blog, Markdown, Latex (4)
        • Linux (9)
      • ... (351)
        • Signals and Systems (103)
        • Math (172)
        • Linear Algebra (33)
        • Physics (42)
        • 인성세미나 (1)
      • 정리필요. (54)
        • 의료기기의 이해 (6)
        • PET, MRI and so on. (1)
        • PET Study 2009 (1)
        • 방사선 장해방호 (4)
        • 방사선 생물학 (3)
        • 방사선 계측 (9)
        • 기타 방사능관련 (3)
        • 고시 (9)
        • 정리 (18)
      • RI (0)
      • 원자력,방사능 관련법 (2)
  • 블로그 메뉴

    • Math
    • Programming
    • SS
    • DIP
  • 링크

    • Convex Optimization For All
  • 공지사항

    • Test
    • PET Study 2009
    • 기타 방사능관련.
  • 인기 글

  • 태그

    검사
    opencv
    Python
    Programming
    signal_and_system
    인허가제도
    random
    function
    signals_and_systems
    SIGNAL
    numpy
    math
    linear algebra
    SS
    Optimization
    fourier transform
    Vector
    Convolution
    Probability
    Term
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
dsaint31x
[DIP] cv2.imshow 사용예
상단으로

티스토리툴바