본문 바로가기

개발Study65

Python에서의 Multiprocessing python에서 cpu core를 여러 개 사용하고자 한다면 threading의 Thread 모듈로는 불가능하다. 그 이유는 python의 GIL(Global Interpreter Lock)정책 때문이다. 여러 개의 쓰레드가 공유자원에 접근하여 값을 변경하는 시도를 할 때 결과가 제대로 반영되지 않는 문제가 발생할 수 있다. 이 문제를 race condition이라고 한다. python에서는 reference counting을 하여 메모리관리를 한다. 어떤 자원 하나에 접근할 때마다 reference 횟수를 증가시켜 체크한다. 함수에 var라는 변수를 넣을 때도 참조를 하므로 reference count를 증가시키고, 반대로 함수가 끝나면 reference count를 감소시킨다. 이런 식으로 진행하다가.. 2021. 3. 9.
tesseract 트레이닝 문자인식을 할 때 사용하는 툴 tesseract는 다운로드받은 상태 그대로 사용하면 인식률이 매우 좋지않다. 얘를 트레이닝 시켜줘서 인식률을 높일 수 있다. jTessBoxEditor를다운로드한다. https://softfamous.com/jtessboxeditor/download/ 적당한곳에 저장하여 압축을 풀어준다. 실행시키기 전에 먼저 메모장에 트레이닝 시킬 글자를 입력한다. 지난번에 인식에 실패한 그 차번호에 있던....'하' 여기서 TIFF/Box Generator 탭 클릭 -> Input 버튼 클릭하여 앞에서 입력한 트레이닝 문자 파일을 불러온다. 불러오면 아래처럼 나옴. output파일은.. 일단 걍 두고, 옆의 eng를 kor로 바꿔준다. jTessBoxEditor window를 옆으로 늘.. 2021. 1. 10.
BLE(Bluetooth Low Energy) Bluetooth 4.0 이후부터 사용 가능한 BLE는 이전 버전보다 훨씬 적은 전력으로 통신할 수 있는 프로토콜이다. 일단 BLE에는 세가지 모드가 있다. classic, smart ready, smart. 세 가지 모드의 BLE들의 관계를 아주 잘 표현한 그림이다. 블루투스의 communication mode는 두 가지가 있다. Advertise(Broadcast) 모드와 Connection 모드. Advertise mode는 signal을 받는 디바이스를 특정하지 않고 모두에게 전송하는 모드. 1:N 통신이 가능하다. Connection mode는 1:1 통신을 할 수 있으며, Advertise mode보다 안전하다. 여기에서는 connection 모드만 자세히 알아본다. Connection모드 관.. 2020. 12. 23.
번호인식 실습 그럼 실습! 차량 이미지를 하나 준비한다. 1. Grayscale로 만들어준다. img2=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 2. 윤곽선을 잘 잡을 수 있도록 가우시안 블러 적용 img2=cv2.GaussianBlur(img2,(3,3),0) 3. 엣지검출 img2=cv2.Canny(img2,100,200) 4. 컨투어를 찾아 rectangle의 형태로 그린다. contours, hierarchy = cv2.findContours(img2, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) for contour in contours: x,y,w,h = cv2.boundingRect(contour) cv2.rectangle(img, pt1=(x,y), p.. 2020. 12. 20.
번호인식 준비하기 python with opencv로 가능한 번호인식. 마침 python이 설치되어있으니 opencv와 나머지를 설치해보자. >> pip3 install opencv-python 문자인식 라이브러리 설치 >> pip3 install pytesseract 준비가 매우 간단하게 되었다. 영상에서 번호인식에 필요한 처리를 하기 위해 필요한 기능들을 먼저 살펴보는 것이 좋겠다. 영상처리 용어도 많아서 정리하는 것이 도움이 될 것 같다. 1. 이미지를 grayscale로 만들기 grayscale 말그대로 이미지를 gray, 회색빛으로 만드는 작업이다. img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) opencv의 cvtColor 함수 : 컬러모드를 변환해주는 함수. 일반적으로 알고 있는.. 2020. 12. 5.
powerMockup 요즘 web공부한다고 이것저것 하다가 좋은 툴을 발견했다. PowerMockup이라는 툴인데, web page를 디자인할 수 있다. 장점은 우리가 업무에서 흔히 사용하고 있는 power point와 연동이 된다는 점이다~! 궁금해서 한번 해보기로 했다. ​ 먼저 파워목업 사이트에 접속하여 trial version을 다운받았다. http://www.powermockup.com PowerPoint Wireframe and Prototyping Tool | PowerMockup Collaboration PowerPoint includes collaboration and sharing features that facilitate working in a team. You can share documents wit.. 2020. 12. 3.