본문 바로가기

프로젝트25

java script - 프로젝트 1 - 4. 영어 한글 변환기 확장 프로그램 개시 확장 프로그램을 사용할 수 있게 할려면 개발자 등록을 해야 합니다.Chrome Web Store Developer Dashboard로 들어가고 개발자 등록을 해줍니다. 이때, 5달러 정도 비용이 발생합니다.잘 되었다면 이런 창이 나타날 것입니다. 프로젝트 폴더 압축한 다음 새 항목 추가를 해줍니다.2단계 인증해야 합니다 프로젝트를 올리면 뭔가 설정을 많이 해야 합니다. 안되어 있으면 뭔가 없다고 상세히 설명해 줍니다. 시키는 대로 다 작성하고 제출해 줍니다. 그럼 이렇게 검토 대기 중이라고 이야기 해 줍니다. 그 상태로 시간이 지나면 상태가 개시됨으로 바뀝니다. 이게 뭐 바뀌었다고 메일을 주거나 그런 건 없더라고요. 크롬 웹 스토어에서 잘 올라갔는지 확인할 수 있습니다. 2024. 7. 15.
opencv - 프로젝트 2 - 3. 카드 인식 이전 프로젝트(https://codestudycafe.tistory.com/51)에서 전처리를 했습니다. 이번에는 직접 학습을 시켜 줍시다.그전에생각해 보니 모델의 마지막 레이어는 (None, 200, 200, 1)이 됩니다. 이 형식에 train_label을 맞춰줍시다.모델 생성이제 모델을 만들어 봅시다.from keras.layers import Dense, Input, Conv2D, MaxPool2D, Conv2DTranspose, Cropping2D, Concatenatefrom keras.models import Modelfrom keras.activations import sigmoidinput = Input(shape=(200,200,3))c_1_1 = Conv2D(32,(3,3),paddi.. 2024. 6. 28.
opencv - 프로젝트 2 - 2. 카드 인식 이전 프로젝트(https://codestudycafe.tistory.com/47)에서 라벨링을 하는 툴을 만들었습니다. 먼저 이 툴을 이용해 라벨링을 해 줍니다.우선 이정도로만 만들고 머신러닝을 학습해 보겠습니다. 먼저 GPU를 사용할 수 있게 세팅을 해줍니다. 몇가지 필요한 설정을들 import한 다음 이미지 파일을 받아옵니다. 저는 data에 원본 이미지, filter에 라벨링한 이미지를 넣었습니다.  이미지를 다 가져오고 크기를 확인해 봅니다. 보니까 몇가지 문제가 있는 것 같네요. 우선 이미지가 너무 큽니다. U-net 논문에서는 572*572 이미지를 사용했는데 그것보다 4배 정도 큰 것 같네요. 그리고 label의 shape가 (8, 1356, 1018, 4)입니다. 마지막 차원이 1이길 바랬.. 2024. 6. 19.
opencv - 프로젝트 2 - 1. 카드 인식 저는 취미로 마술을 하고 있습니다. 같이 마술하는 친구들이랑 모여서 이야기를 하는데 이런 이야기가 나오더라고요관객이 7하트를 들고 있는 모습을 찍었는데 나중에 사진 속 카드를 확인해 보니 7 스페이드로 바뀌어 있으면 신기하지 않을까? 딥러닝에서 U-net(https://codestudycafe.tistory.com/41)을 이용하면 충분히 만들 수 있겠다는 생각이 들었고 바로 작업에 들어갔습니다. 우선 카드를 인식하는 것부터 시작해 보겠습니다. 윤곽선 추출1. 흑백 샤프닝카드를 먼저 라벨링을 해줘야 학습을 시킬 수 있습니다. 이 부분을 opencv로 처리하겠습니다. 먼저 흑백으로 사진을 입력받고 윤곽선을 추출해 줍니다. 그리고 마우스로 영역을 클릭하면 해당 위치와 색이 비슷한 영역을 bfs로 탐색하면서 .. 2024. 6. 8.
opencv - 프로젝트 1 - 1. 얼굴 모자이크 딥러닝 프로젝트를 하다 보면 사람 이미지를 보여주는 경우가 있습니다. 하지만 사람 얼굴을 그대로 보여주면 초상화같은 다양한 문제가 있을 수 있으니 얼굴을 자동으로 모자이크를 하는 프로그램을 먼저 만드려고 합니다. 얼굴을 인식하는 데에 다양한 방법( haarcascade, DNN 얼굴 검출)이 있습니다. 저는 mediapipe를 이용하기로 했습니다. python(https://codestudycafe.tistory.com/26)과 vscode(https://codestudycafe.tistory.com/16)를 설치하고 pip install mediapipe를 실행합니다.  mp.solutions.face_detection.FaceDetection으로 얼굴 인식 모델을 가져옵니다. mpDraw는 얼굴 인식.. 2024. 6. 2.
java script - 프로젝트 1 - 2. 영어 한글 변환기 기본 규칙영어를 한글로 바꾸는 것은 정말 어렵습니다. "rkqkd(가방)"이라는 글자가 있으면 'rk', 'qkd'으로 끊어줘야 합니다. 어디서부터 어디까지가 한 글자인지 알아야 한다는 것이죠. 우선 몇 가지 규칙을 찾아봤습니다.모음은 항상 중성입니다.초성이 없는 중성 뒤에 자음이 오면 이 자음은 항상 초성입니다.모음 뒤에 모음이 올 수 있는 경우는 "ㅘ", "ㅙ", "ㅚ", "ㅝ", "ㅞ", "ㅟ", "ㅢ" 뿐입니다.초성은 항상 자음 하나입니다.('ㄳ' 같은 경우는 없습니다.)이 규칙을 고려했을 때 다음과 같은 방법을 생각해 볼 수 있습니다.입력한 영어를 글자로 바꿉니다.모음인 경우(1번 규칙)앞글자가 없으면 "초성이 없는 중성"입니다.앞글자도 모음이면 앞글자와 합쳐질 수 있는지 확인합니다(3번 규칙).. 2024. 5. 14.