본문 바로가기

PyQt56

QSplitter 다루기 splitter는 경계를 사용자가 직접 움직이게 할 수 있게 만들어준다. import sys from PyQt5.QtWidgets import QApplication, QWidget, QHBoxLayout, QFrame, QSplitter from PyQt5.QtCore import Qt class MyApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): hbox = QHBoxLayout() topleft = QFrame() topleft.setFrameShape(QFrame.StyledPanel) topright = QFrame() topright.setFrameShape(QFrame.Panel) bott.. 2022. 5. 16.
바운딩박스와 좌표값 추출하기 CV 영상인식 프로젝트를 하면서 바운딩박스를 일일이 확인하고 처리하는게 여간 귀찮은 일이 아니었다. 어차피 꽤나 여러 번 이 짓거리를 반복해야 할 것 같아서 라벨링 프로그램을 짜보기로 했다. 내가 해야할 것은 두 가지다. 1. 바운딩박스를 애플리케이션에 그릴 수 있게 해야한다. 2. 그려진 바운딩박스의 좌표값을 사진의 크기를 기준으로 추출해야 한다. 1번 문제는 이미 해결했으니 2번 문제를 해결해보자 우선 사진의 크기 좌표를 띄워야 한다. self.lbl_test.setText(f'{self.img.height()}, {self.img.width()}') layout.addWidget(self.lbl_test, 0, 80, 5, 20) # 테스트 문제는 사진의 크기를 처음에 띄우고 나면 사진의 크기가 변.. 2022. 3. 29.
사진에 바운딩박스 그리기 CV 영상인식 기술을 적용하기 위해 바운딩박스를 그리다가 어느순간 내가 이걸 왜 하고 있지? 싶더라 노가다도 이런 노가다가 없는데 좀 더 편리하게 하기 위한 프로그램을 개발중이다. 일단 PyQt5를 이용해서 직접 바운딩박스를 그릴 수 있도록 적용해볼까 한다. 우선 세팅부터하자. import sys import cv2 from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * class MyApp(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setWindowTitle('EasyBoxer') # 툴 제목 .. 2022. 3. 28.
PyQt5를 이용하여 동영상 플레이어를 만들어보자(3) 이전포스팅 https://tripleler.tistory.com/5?category=1015667 PyQt5를 이용하여 동영상 플레이어를 만들어보자(2) 프로그래밍에서 중요한 것은 쓰레딩이다. 쓰레딩을 간단히 설명하자면 일반적으로 파이썬 코드는 코드의 짜임 순서대로 처리한다. 따라서 동영상 플레이어같은 프로그램을 만들 때 쓰레드를 tripleler.tistory.com 무릇 동영상 플레이어라면 재생/정지가 가능하고 속도를 스스로 조절할 수 있어야 한다. 이번 포스팅에서는 이 두가지 핵심기능을 구현해 보고자 한다, 앞의 두 포스팅은 코드 복사를 허용해놨지만 이번 포스팅의 경우는 공부를 위해서라도 복사를 금지해뒀음을 참고할 것! 우선 코드부터 보자! import sys from PyQt5.QtWidgets .. 2022. 1. 8.
PyQt5를 이용하여 동영상 플레이어를 만들어보자(2) 프로그래밍에서 중요한 것은 쓰레딩이다. 쓰레딩을 간단히 설명하자면 일반적으로 파이썬 코드는 코드의 짜임 순서대로 처리한다. 따라서 동영상 플레이어같은 프로그램을 만들 때 쓰레드를 사용하지 않는다면 동영상이 돌아가는 동안 어떠한 버튼 조작도 불가능하다는 소리이다. 왜냐하면 동영상을 처리중이니까. 현재 동영상을 보여주는 행동이 끝나야 다음 처리가 진행된다. 동영상은 동영상대로 버튼은 버튼대로 각각 돌아가야 하도록 도와주는 것이 쓰레드이다. 이건 이거대로 저건 저거대로 따로따로 일을 분할 해서 줘버리는 것이다. 이전 글(동영상 플레이어를 만들어보자(1)) 과 OpenCV 기초 블로그를 참조하여 다음 쓰레드를 구현하였다. https://tripleler.tistory.com/3 PyQt5를 이용하여 동영상 플레.. 2022. 1. 8.
PyQt5를 이용하여 동영상 플레이어를 만들어보자(1) 이 블로그의 포스팅은 기본적인 PyQt5에 대해 알고 있다고 가정한다. 이 블로그의 포스팅은 기본적인 파이썬 라이브러리에 대해 알고 있다고 가정한다. 파이썬 툴로는 파이참(PyCharm)을 사용한다. PyQt5란?? PyQt5는 Qt5 어플리케이션 프레임워크에 대한 파이썬 버전입니다. Qt는 플랫폼에 관계없이 다양한 기능을 포함하는 C++ 라이브러리이자 개발툴입니다. PyQt5는 이러한 1000여 개의 클래스들을 포함하는 파이썬 모듈의 모음입니다. PyQt5는 윈도우, 리눅스, macOS, 안드로이드, iOS를 지원합니다. PyQt5의 홈페이지(https://www.riverbankcomputing.com/software/pyqt/intro)에서 최신의 그리고 안정적인 버전의 PyQt5와 최신 버전의 문.. 2022. 1. 6.