Toggle navigation
Toggle navigation
This project
Loading...
Sign in
강현준
/
2018-1-capstone_design_1-Automated_calculation_system
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
Hyunjun
2018-06-12 21:14:45 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
1d6270f665b9761e2126b59026c20d149b5041ec
1d6270f6
1 parent
f89c3685
fix README
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
50 additions
and
51 deletions
README.md
README.md
View file @
1d6270f
...
...
@@ -11,9 +11,9 @@ Supported Platforms & Test Environments
---------------------------------------------------------------------------------------------------------------------------------
>Raspberry Pi 3 Model B
Paspberry Pi Camera Rev. 1.3
Ubuntu MATE 16.04.2
C++ 컴파일러 버전 11이상
>
Paspberry Pi Camera Rev. 1.3
>
Ubuntu MATE 16.04.2
>
C++ 컴파일러 버전 11이상
Application Project Setup
...
...
@@ -41,84 +41,83 @@ Detail
---------------------------------------------------------------------------------------------------------------------------------
>1. 계획서 업로드
[
강현준, 권은진, 김효은, 하미르
]
라즈베리파이에 이미지 프로세싱 딥러닝을 적용한 자동화 계산 시스템
>
[강현준, 권은진, 김효은, 하미르] 라즈베리파이에 이미지 프로세싱 딥러닝을 적용한 자동화 계산 시스템
>2. 중간보고서(논문) 업로드
[
강현준, 권은진, 김효은, 하미르
]
이미지 인식 딥러닝을 적용한 자동화 계산 시스템_중간보고서(논문)
>
>
2. 중간보고서(논문) 업로드
>
[강현준, 권은진, 김효은, 하미르] 이미지 인식 딥러닝을 적용한 자동화 계산 시스템_중간보고서(논문)
>3. simple_convnet 원본코드 업로드
>
>
3. simple_convnet 원본코드 업로드
>4. params.pkl->params.csv
프로그램의 속도보장을 위해 python->c++ 컨버팅 작업이 필요함
python 코드에서 가중치를 pickle 파일에 저장하는데 c++에서는 pickle 파일을 읽는 데에 어려움이 있음
pickletools라는 라이브러리가 있지만 에러가 많고, 자바, 파이썬, C++ 여러 언어를 지원해 무겁기 때문에 속도를 올리기 위한 컨버팅 작업에는 적절하지 않음
>
>
4. params.pkl->params.csv
>
프로그램의 속도보장을 위해 python->c++ 컨버팅 작업이 필요함
>
python 코드에서 가중치를 pickle 파일에 저장하는데 c++에서는 pickle 파일을 읽는 데에 어려움이 있음
>
pickletools라는 라이브러리가 있지만 에러가 많고, 자바, 파이썬, C++ 여러 언어를 지원해 무겁기 때문에 속도를 올리기 위한 컨버팅 작업에는 적절하지 않음
그래서, 파라미터를 저장하는 부분을 csv로 바꿔 C++에서 그 파일로 읽기위해 params.pkl을 params.csv로 바꾸는 코드를 추가함
>5. params.pkl->params.txt
입력처리할 때 csv파일로 읽으면 속도가 느림
이 또한 속도를 올리기 위한 컨버팅 작업의 목적에 맞지 않기 때문에 params.pkl 파일을 csv 파일이 아닌 txt 파일로 바꿈
>>5. params.pkl->params.txt
>입력처리할 때 csv파일로 읽으면 속도가 느림 이 또한 속도를 올리기 위한 컨버팅 작업의 목적에 맞지 않기 때문에 params.pkl 파일을 csv 파일이 아닌 txt 파일로 바꿈
>6. python test 코드 추가
test하는 부분만 골라내기 위해 python test 코드를 추가(test.py), simple_convnet 내용 추가
>
>
6. python test 코드 추가
>
test하는 부분만 골라내기 위해 python test 코드를 추가(test.py), simple_convnet 내용 추가
>7. python test 폴더 추가
python test 폴더에는 test에 필요하지 않은 train 부분을 삭제함
>
>
7. python test 폴더 추가
>
python test 폴더에는 test에 필요하지 않은 train 부분을 삭제함
>8. make_img.py 추가
이미지를 불러와 (32,32,3)의 크기로 resize한 후 input.txt에 저장함
>
>
8. make_img.py 추가
>
이미지를 불러와 (32,32,3)의 크기로 resize한 후 input.txt에 저장함
>9. simple_convnet_cpp 코드 추가
1) layers.hpp : Convolution, ReLu, Normalization, Pooling, DW_Conv등 각 layer가 구현
2) SimpleConvNet.hpp : 딥러닝 모델이 구현
3) input.txt : make_img.py코드로 만든 이미지를 (32,32,3)의 크기로 만들어 txt파일로 저장
4) pred.txt : 1개의 이미지만 넣으면 예측이 되지않아 dummy를 같이 읽어서 처리함. 출력은 되지않음
5) params.txt : 속도향상을 위해 params.pkl파일을 params.txt로 변환
6) main.cpp
*
c++ 컴파일러 버전 11이상
*
프로젝트 생성 시 sdl 검사 체크 해제
>
>
9. simple_convnet_cpp 코드 추가
>
1) layers.hpp : Convolution, ReLu, Normalization, Pooling, DW_Conv등 각 layer가 구현
>
2) SimpleConvNet.hpp : 딥러닝 모델이 구현
>
3) input.txt : make_img.py코드로 만든 이미지를 (32,32,3)의 크기로 만들어 txt파일로 저장
>
4) pred.txt : 1개의 이미지만 넣으면 예측이 되지않아 dummy를 같이 읽어서 처리함. 출력은 되지않음
>
5) params.txt : 속도향상을 위해 params.pkl파일을 params.txt로 변환
>
6) main.cpp
>
*c++ 컴파일러 버전 11이상
>
*프로젝트 생성 시 sdl 검사 체크 해제
>10. google_image_crwaling 코드 추가
필요한 데이터셋을 만들기 위한 google_image_crwaling 코드 추가
>
>
10. google_image_crwaling 코드 추가
>
필요한 데이터셋을 만들기 위한 google_image_crwaling 코드 추가
>11. chrome_crwaling 확장프로그램 추가
앞서 만든 코드는 1회에 20장의 사진만 다운로드 가능
데이터셋을 만들기 위해서는 훨씬 더 방대한 양의 데이터가 필요함
googel chrome의 확장프로그램을 활용한 구글 이미지 검색 결과 크롤링 프로그램 구현
>
>
11. chrome_crwaling 확장프로그램 추가
>
앞서 만든 코드는 1회에 20장의 사진만 다운로드 가능
>
데이터셋을 만들기 위해서는 훨씬 더 방대한 양의 데이터가 필요함
>
googel chrome의 확장프로그램을 활용한 구글 이미지 검색 결과 크롤링 프로그램 구현
>12. simple_convnet_rasberryPi 코드 추가
라즈베리파이에서 구동되는 코드 추가
make_img.py에서는 라즈베리파이에 연결된 카메라가 촬영을 하면 그 사진을 32
*32*
3 사이즈로 resize해준 후 input.txt파일로 변환해줌
main.cpp에서 convnet 코드 실행
predict.sh 쉘파일로 전체 실행
>
>
12. simple_convnet_rasberryPi 코드 추가
>
라즈베리파이에서 구동되는 코드 추가
>
make_img.py에서는 라즈베리파이에 연결된 카메라가 촬영을 하면 그 사진을 32*32*3 사이즈로 resize해준 후 input.txt파일로 변환해줌
>
main.cpp에서 convnet 코드 실행
>
predict.sh 쉘파일로 전체 실행
>13. dataset 추가
image_process.py : cropping을 통해 정사각형 형태를 만들고 32
*
32 크기로 resize, 사진 반전, 회전을 통해 사진 1개당 8개의 데이터를 생성
크롤링을 통해 휴지, 소주, 캔음료, 라면, 삼각김밥 각각 500개씩의 이미지를 다운받음
한 카테고리당 4000개의 데이터를 생성
>
>
13. dataset 추가
>
image_process.py : cropping을 통해 정사각형 형태를 만들고 32*32 크기로 resize, 사진 반전, 회전을 통해 사진 1개당 8개의 데이터를 생성
>
크롤링을 통해 휴지, 소주, 캔음료, 라면, 삼각김밥 각각 500개씩의 이미지를 다운받음
>
한 카테고리당 4000개의 데이터를 생성
>14. data.bin.gz
직접 만든 데이터셋. 32
*
32의 이미지를 rgb로 분리하여 이미지 1개당 3072개의 데이터, 1개의 label을 포함하여 3073개의 데이터를 갖음
>
>
14. data.bin.gz
>
직접 만든 데이터셋. 32*32의 이미지를 rgb로 분리하여 이미지 1개당 3072개의 데이터, 1개의 label을 포함하여 3073개의 데이터를 갖음
>15. params.pkl 추가
제작한 데이터셋을 트레이닝하고 나온 가중치를 저장한 params.pkl 파일 추가
>
>
15. params.pkl 추가
>
제작한 데이터셋을 트레이닝하고 나온 가중치를 저장한 params.pkl 파일 추가
>16. simple_convnet_rasberryPi 코드 추가
인식한 결과에 따라 계산서가 나오도록 코드를 추가
>
>
16. simple_convnet_rasberryPi 코드 추가
>
인식한 결과에 따라 계산서가 나오도록 코드를 추가
>17. 최종 발표 ppt 및 데모 영상 추가
\ No newline at end of file
>>17. 최종 발표 ppt 및 데모 영상 추가
\ No newline at end of file
...
...
Please
register
or
login
to post a comment