딥러닝 데이터를 늘리기 위한 이미지 제너레이터 만들기 10

9) 이미지 제너레이터 만들기 - 깃허브 올리기, exe파일 만드는 방법

깃허브 업로드 new repository 이용해서 새 저장소 만들기 이때 만들어진 저장소 주소 기억하기 프로그램이 담긴 폴더 우클릭 후 'git bash here'클릭 명령어 입력으로 이름과 아이디 입력 이름 : git config --global user.name "유저이름" 이메일 : git config --global user.email "유저이메일" 파일 업로드 전에 다음 명령어를 입력한다. git init : .git 파일 생성 git add . git commit -m "커밋 메세지" : 업로드시 들어갈 커밋메세지 입력 이제 다음 명령어를 쳐서본격적으로 깃허브에 파일을 올린다. git remote add origin 해당 깃허브 주소 git push -u origin master 이 명령어 이..

8) 이미지 제너레이터 만들기 - 도움말 추가하고 도움말 내용 채우기

기본 준비 도움말 또한 별도의 창을 이용할 예정이다. 먼저 ui를 받아온다.(클래스 밖에 작성해야함) howtohelp_class = uic.loadUiType("ui/howtohelp.ui")[0] optionhelp_class = uic.loadUiType("ui/optionhelp.ui")[0] 기본 틀 클래스를 만든다. class HowToHelp(QDialog, howtohelp_class): def __init__(self): super().__init__() self.setupUi(self) class OptionHelp(QDialog, optionhelp_class): def __init__(self): super().__init__() self.setupUi(self) 창 띄우기 해당 부..

7) 이미지 제너레이터 만들기 - 이미지 늘릴때 진행상황 프로그레스바로 나타내기

기본 준비 진행상황은 별도의 창을 띄워서 알릴 예정이다. 따라서 별도의 창을 띄우기 위한 준비를 한다. 먼저 ui를 받아온다.(클래스 밖에 작성해야함) generating_class = uic.loadUiType("ui/generating.ui")[0] 기본 틀 클래스를 만든다. class Generating(QDialog, generating_class): def __init__(self): super().__init__() self.setupUi(self) 창 띄우기 프로그레스바는 generate/save 버튼을 눌렀을떄 나오는 폴더 선택 창 다음으로 나오도록 할것이다. 기존에 만들어둔 generateAndSave 함수 안에 다음 코드를 삽입한다. 폴더 선택을 안했을 경우에는 굳이 프로그레스 창을 띄..

6) 이미지 제너레이터 만들기 - 이미지 늘리고 저장하는 기능 추가

필요한 클래스 함수 추가 및 이벤트 함수와 연동하기 기능을 구현할 클래스 함수를 추가한다. WindowClass 안에 함수를 넣는다. def generateAndSave(self): # 여기에 이미지 늘리고 저장하는 기능 구현할 예정 이벤트를 구현하기 위한 코드이다. __init__ 함수안에 넣어준다. self.generateAndSave_button.clicked.connect(self.generateAndSave) # 만들고 저장하기 버튼 클릭 이벤트 generateAndSave 함수 기능인 파일 열기 기능 구현 getExistingDirectory를 이용해 폴더의 경로를 가져온다. 두번째 인자에 텍스트를 넣어 저장폴더를 고르른것을 알려준다. save_folder = QFileDialog.getExi..

5) 이미지 제너레이터 만들기 - 미리보기 기능 추가

필요한 클래스 변수 추가 __init__ 함수에 필요한 변수를 넣는다 self.axes = [] # 원하는 레이아웃에 matplotlib를 연동되게 해주는 부분 미리 세팅 self.fig = plt.Figure() self.canvas = FigureCanvas(self.fig) self.plt_layout.addWidget(self.canvas) 필요한 클래스 함수 추가 및 이벤트 함수와 연동하기 기능을 구현할 클래스 함수를 추가한다. WindowClass 안에 함수를 넣는다. def preview(self): # 여기에 미리보기 제공하는 기능 구현할 예정 이벤트를 구현하기 위한 코드이다. __init__ 함수안에 넣어준다. self.preview_button.clicked.connect(self.pr..

4) 이미지 제너레이터 만들기 - 파일 여러개 여는 기능 추가

필요한 클래스 변수 추가 __init__ 함수에 필요한 변수를 넣는다(이전에 이미 넣었던 변수 생략) self.folder = None # 폴더의 경로 저장하는 변수 필요한 클래스 함수 추가 및 이벤트 함수와 연동하기 기능을 구현할 클래스 함수를 추가한다. WindowClass 안에 함수를 넣는다. def dirOpen(self): # 여기에 폴더 열어서 파일 여러개 여는 기능 구현할 예정 이벤트를 구현하기 위한 코드이다. __init__ 함수안에 넣어준다. self.directoryOpen_action.triggered.connect(self.dirOpen) # 경로 열기 클릭 이벤트 dirOpen 함수 기능인 파일 열기 기능 구현 getExistingDirectory : 폴더 선택 화면을 열리게 해준..

3) 이미지 제너레이터 만들기 - 파일1개 여는 기능 추가

필요한 클래스 변수 추가 __init__ 함수에 필요한 변수를 넣는다 self.file = None # 파일 1개 정보 저장하는 변수 self.files_root = [] # 파일들의 경로 저장되어 있는 리스트 필요한 클래스 함수 추가 및 이벤트 함수와 연동하기 기능을 구현할 클래스 함수를 추가한다. WindowClass 안에 함수를 넣는다. def fileOpne(self): # 여기에 파일 1개 여는 기능 구현할 예정 def dirOpen(self): # 여기에 원하는 폴더 열어서 전체 이미지 파일 여는 기능 구현할 예정 이벤트를 구현하기 위한 코드이다. __init__ 함수안에 넣어준다. self.fileOpen_action.triggered.connect(self.fileOpne) # 파일 열기 ..

2) 이미지 제너레이터 만들기 - 만든 ui 연동하기

프로그램에 ui 연동시키기 ui를 연동시킨다. 실행시키면 만든 대로 프로그램이 뜨지만, 기능을 넣지 않았으므로 클릭해도 아무 반응이 없다. 앞으로 기능은 윈도우 클래스에 함수를 추가시키면서 만들 예정이다. ui요소들(버튼 등)에 이벤트를 연결시키는 작업은 __init__ 함수에 할 예정이다. 필요한 클래스 변수들도 __init__함수에 넣을 예정이다. 이벤트(기능)은 WindowClass 안에 함수를 만들어 그함수안에 기능을 넣는쪽으로 구현할 예정이다. import sys from PyQt5.QtWidgets import * from PyQt5 import uic # ui 불러오기 form_class = uic.loadUiType("ui/main.ui")[0] # 윈도우 클래스, ui파일 전달 class..

1) 이미지 제너레이터 만들기 - 기능 정의 및 ui디자인 짜기

프로그램에 넣을 기능 정의 불러오기 : 이미지1장 혹은 여러 이미지 처리를 위한 폴더를 불러올 수 있음 속성 설정 : 이미지 제너레이터는 다양한 변형방법 및 생성개수를 설정할 수 있음 이미지 생성 : 버튼 하나로 이미지 생성이 될 수 있게 함 이미지 미리보기 : 생성된 이미지들을 볼 수 있음 저장하기 : 사용자가 클릭을 통해 이미지를 저장할 수 있게 함, 사용자는 여러개의 이미지를 저장할 폴더를 고르게 됨, 이름은 시스템에서 번호를 자동으로 매겨서 저장되도록 함 도움말 제공 : 사용법과 속성 설명에 대해 담은 도움말 제공 프로그램 메인 디자인 짜기 프로그램의 경우 pyqt를 이용하여 만들 예정 Qt Designer을 이용해서 ui 구성 배치함 처음에 MainWindow를 선택한 후 생성 기본 텍스트로 설..

0) 이미지 제너레이터 만들기 - 개요

이미지 제너레이터란? 원본에서 변형된 이미지를 여러개 만들어 준다. 딥러닝 데이터가 적을때, 위 프로그램을 사용하여 데이터 양을 늘릴 수 있다. 개발 계기 딥러닝을 이용한 프로젝트를 만들때 사용해야할 데이터셋 양이 너무 작아 부풀릴 필요가 있었음. 그레서 케라스에서 제공하는 ImageDataGenerator을 이용해 데이터양을 부풀림. 그때 사용하였던 코드를 이용해 프로그램을 만들면 나중에 데이터를 늘릴 일이 있을때 편하게 데이터를 늘릴수 있을것 같아서 개발하기로 결정 개발 환경 pyqt designer : ui 구성요소 배치 pycharm : 프로그램에 기능 넣고 ui 연동시키기 완성한 프로그램의 소스코드 공유 GitHub - jug112564/image_generator: you can make ma..