본문 바로가기

인공지능 연구노트

(6)
딥러닝(Deep Learning) 개발 과정 딥러닝 개발을 하라! 딥러닝...... 개발? 딥러닝을 개발하라는 게 도대체 무슨 소리야? 딥러닝을 이용하여 개발을 하려다 보면 부딪치게 되는 이 막연함. 어떤 개발도 다 마찬가지겠지만 딥러닝 개발도 개발자가 경험적으로 실행해 온 나름의 과정이 있을 것이다. 하지만 딥러닝 개발을 이제 막 시작하려는 사람들은 다음과 같은 일반적인 순서를 기억하고 있으면 좋을 것이다. Step 1. 문제 정의 Step 2. 데이터 수집 Step 3. 데이터 전처리 Step 4. 딥러닝 알고리즘 적용 - 알고리즘 구현, 데이터 입력, 결과 수집 Step 5. 딥러닝 성능 평가 Step 6. 배포 Step 7. 유지 보수 출처 : 서두르지 말고 천천히 차근차근 딥러닝, 노기섭(2021) 여기까지만 봐도 딥러닝 개발이라는 것이 ..
Open CV 사용하여 화면에 이미지 연속으로 보여주기 OpenCV 라이브러리를 사용하여 이미지 연속으로 보여주기 ​ 특정 폴더에 있는 이미지들을 화면에 연속적으로 보여주는 방법. 아래 링크에 있는 영상과 같은 모습으로 실행되도록 코드를 짜보자. OpenCV 사용하여 화면에 이미지 연속으로 보여주기 OpenCV 라이브러리를 사용하여 이미지 연속으로 보여주기 특정 폴더에 있는 이미지들을 화면에 연속적으... blog.naver.com STEP 1. 필요한 라이브러리 import ​ STEP 2. glob을 사용하여 images 폴더 내 jpg로 끝나는 모든 파일을 리스트 형식으로 저장. => 이미지 경로 설정에 대한 설명 : 현재 작업 중인 폴더 안에 있는 images 폴더 내 jpg로 끝나는 모든 파일을 리스트 형식으로 저장한다는 뜻. => 반복문은 이미지 ..
PNG 파일 -> JPG 파일로 바꾸기 이미지/영상처리 프로그래밍을 하다보니 이미지 파일들의 형식에 민감하다. 아무래도 JPG 형식이 만만한데 내가 가지고 있는 이미지들이 대부분 PNG 파일이었다는;;; ​ STEP 1. 그림판 프로그램을 연다. STEP 2. PNG 파일을 불러온다. 파일에서 불러오기해도 되고 드래그 해서 가져와도 되고. STEP 3. 메뉴에서 파일 -> 다른 이름으로 저장 -> JPEG 그림 선택한다. STEP 4. 파일이름과 파일형식 확인하고 저장 선택하면 끝.
인공신경망이란? 인공신경망의 개념 인공신경망이란? 인간의 신경망을 흉내 낸 것. ​ 흠...그렇다면인간의 신경망을 어떻게 흉내냈다는 것인가? 먼저, 인간의 신경망에 대해서 간단하게 살펴보자. ​ 뉴런(Neuron) 인간의 뇌는 기본적으로 신경망을 구성하는 뉴런으로 구성되어있다. 그리고 인간의 뇌는 약 1,000억 개 이상의 뉴런이 시냅스(Synapse)를 통해 병렬연결 되어있다. 결국, 인간의 뇌를 구성하고 있는 신경망은 뉴런으로 구성되어 있으며 뉴런과 뉴런은 시냅스로 연결되어 있다는 것. 위 그림에서 활성화함수는 뉴런의 출력값을 정하는 함수. 가장 간단한 형태의 뉴런은 입력에 가중치를 곱한 뒤(행렬의 곱셈임) 활성화함수를 취하면 출력을 얻을 수 있음. ​ ​ 뉴런을 이용한 인간의 신경 전달은 다음과 같은 순서로 일어난다. Step1. ..
[파이썬/이미지 처리] 원본 이미지 색상 변환하기 - 파이썬 이미지처리 라이브러리를 사용하여 원본의 이미지를 RGB 색상 사진으로 변환하기 Line 1. 벡터, 행렬 데이터를 쉽게 처리하기 위한 모듈 선언 2. 화면에 이미지 데이터를 보여 주기 위한 모듈 선언 3. 이미지 파일과 데이터 처리를 위한 모듈 선언 Line 5. image 파일 불러오기 6. image data를 numpy array로 구성하기 Line 10~15 pix array에서 각각 R(0), G(1), B(2) 성분값 외에는 0으로 만든 후, 원본 이미지에서 R, G, B에 해당하는 배열 만들기 Line 17~20 "원본" 이미지인 pix 행렬을 이미지 데이터로 출력 TIP. - plt.subplot(row, column, index) - subplot(141)은 1개의 열, 4개의..
주요 인공신경망(ANN, DNN, CNN, RNN, AE, GAN, UNET) 개념 지도학습 - ANN, DNN, CNN, RNN 비지도학습 - AE, GAN 고급지도학습 - UNET ​ ANN (Artificial neural network, 인공신경망) - 두뇌의 신경망을 흉내 낸 인공지능 기술 - 입력 계층, 은닉 계층, 출력 계층으로 구성 - 초기에는 기술적 한계로 은닉 계층을 한 개만 포함하여 주로 총 3개 계층으로 ANN 구성 ​ DNN (Deep neural network, 심층신경망) - 은닉 계층을 여러 개 쌓아서 만든 인공신경망 - 다수의 은익 계층을 사용하는 DNN은 ANN에 비해 더 우수한 성능을 보임 ​ CNN (Convolutional neural network, 합성곱신경망) - 영상 처리에 많이 활용되는 합성곱을 이용하는 기술 - 합성곱에 사용되는 필터들은 ..