'2016/10'에 해당되는 글 4건

  1. 2016.10.21 [OCR] 광학문자인식 정보
  2. 2016.10.18 [Range Query] datetime query 작성 예제.
  3. 2016.10.12 [우편번호검색] 우편번호검색 서비스를 만들기 위한 기본 정보
  4. 2016.10.07 [Maven] maven-replacer-plugin 사용하기.

[OCR] 광학문자인식 정보

ITWeb/검색일반 2016. 10. 21. 13:01

조만간 사용을 해야해서 일단 링크 투척


https://github.com/tesseract-ocr/tesseract

https://github.com/jflesch/pyocr



opencv 도 링크 투척


http://docs.opencv.org/2.4.9/modules/refman.html


:

[Range Query] datetime query 작성 예제.

Elastic/Elasticsearch 2016. 10. 18. 11:15

늘 그렇듯이 기억력의 한계 극복을 위해 기록합니다.


              "range": {
                "time": {
                  "gte": "2016-10-17 00:00:00.000",
                  "lte": "2016-10-17 23:59:59.999",
                  "format": "yyyy-MM-dd HH:mm:ss.SSS",
                  "time_zone": "+09:00"
                }
              }


보시면 다들 아시는 내용입니다.


[참고문서]

https://www.elastic.co/guide/en/elasticsearch/reference/2.4/query-dsl-range-query.html

https://www.elastic.co/guide/en/elasticsearch/reference/2.4/mapping-date-format.html

https://www.elastic.co/guide/en/elasticsearch/reference/2.4/date.html

:

[우편번호검색] 우편번호검색 서비스를 만들기 위한 기본 정보

ITWeb/검색일반 2016. 10. 12. 17:47


우편번호 검색 기능을 구현 하다 보니 우체국 DB로는 daily 변경 데이터 반영이 어려워 그냥 행자부 DB를 가지고 만드는게 좋겠다는 결론을 내렸습니다.


방법은)

1. 우체국 DB + 행자부 변경 DB to 우체국 DB

2. 행자부 DB + 행자부 변경 DB


================================


우편번호 검색 서비스를 만들기 위해서 추려본 내용입니다.

그냥 편하게 행자부나 우체국에서 제공하는 오픈API를 사용해도 되지만 직접 구축해보고 싶어하는 분들을 위해 공유해 봅니다.


[도로명주소 오픈API]

https://www.juso.go.kr/addrlink/devAddrLinkRequestSample.htm


[우체국 오픈API]

http://biz.epost.go.kr/customCenter/custom/custom_10.jsp


[우체국 DB 다운로드]

http://www.epost.go.kr/search/zipcode/cmzcd002k01.jsp


[도로/지번 주소와 우편번호]

  도로/지번 주소는 행정자치부에서 관리

  우편번호는 행자부 데이터를 받아와서 우체국에서 매칭 및 생성 관리 (일부 데이터는 누락 될 수 있음)


[우편번호 PK]

  건물관리번호


[도로명]

  우편번호 / 시도(영문) / 시군구(영문) / 읍면(영문) / 도로명(영문) / 지하여부 /  건물번호본 - 건물번호부 / (법정동명, 리명, 시군구동건물명)

    지하여부 : 1 일 경우 지하 + 건물번호본 - 건물번호부 / (법정동명, 리명, 시군구동건물명) 로 지정 합니다. (지하 31)


[지번]

  우편번호 / 시도(영문) / 시군구(영문) / 읍면(영문) / 법정동명 / 리명 / 산여부 / 지번본번 - 지번부번 / (시군구동건물명)

    산여부 : 1 일 경우 산 + 지번본번 - 지번부번 / (시군구동건물명) 로 지정 합니다. (산109-7)


[사서함]

  우편번호 / 시도 / 시군구 / 읍면 / 사서함명 / 시작사서함주번호 - 시작사서함부번호 / 끝사서함주번호 - 끝사서함부번호

    사서함번호는 시작부터-끝까지 (전체) 로 표기 합니다. (1-2500 (전체))


[도로명 범위]

  우편번호 / 시도(시도영문) / 시군구(시군구영문) / 읍면(영문) / 도로명(영문) / 지하여부 / 시작건물번호(주) - 시작건물번호(부) / 끝건물번호(주) - 끝건물번호(부)

    시작건물번호-끝건물번호 표현

      382, 0 - 384, 1 = 382, 383, 384, 384-1


[지번 범위]

  우편번호 / 시도(영문) / 시군구(영문) / 읍면동(영문) / 리명 / 산여부 / 시작주번지 - 시작부번지 / 끝주번지 - 끝부번지


[인덱스 종류]

  통합주소 DB

  사서함 + 도로명 범위 + 지번 범위 DB


[검색 대상 필드]

  도로명(법정동명 + 리명) + 건물번호 

  읍/면/동/리 + 지번

  건물명 (시군구동건물명)

  사서함 + 사서함번호


[통합검색]

  시도 / 시군구 / 읍면 / 도로명 / 법정동명 / 리명 / 건물번호본 / 건물번호부 / 지번본번 / 지번부번 / 시군구동건물명


[화면출력]

  우편번호 / 시도(영문) / 시군구(영문) / 읍면(영문) / 도로명(영문) / 지하여부 /  건물번호본 - 건물번호부 / (법정동명, 리명, 시군구동건물명)

  우편번호 / 시도(영문) / 시군구(영문) / 읍면(영문) / 법정동명 / 리명 / 산여부 / 지번본번 - 지번부번 / (시군구동건물명)

  우편번호 / 시도 / 시군구 / 읍면 / 사서함명 / 시작사서함주번호 - 시작사서함부번호 / 끝사서함주번호 - 끝사서함부번호

  우편번호 / 시도(시도영문) / 시군구(시군구영문) / 읍면(영문) / 도로명(영문) / 지하여부 / 시작건물번호(주) - 시작건물번호(부) / 끝건물번호(주) - 끝건물번호(부)

  우편번호 / 시도(영문) / 시군구(영문) / 읍면동(영문) / 리명 / 산여부 / 시작주번지 - 시작부번지 / 끝주번지 - 끝부번지


[정렬]

  시도 / 시군구 / 우편번호 / score


[필터]

  시도 / 시군구


위 내용에서 입맛에 맞게 고치시면 됩니다.

꼭 저렇게 해야 한다는 것이 절대 아닙니다.

요구사항에 맞게 수정해서 만드시면 되겠습니다. :) 

:

[Maven] maven-replacer-plugin 사용하기.

ITWeb/개발일반 2016. 10. 7. 14:54

간혹 필요할때가 있어서 포스팅 합니다.

maven project 를 사용하면서 소스코드에서 특정 변수에 대한 치환을 하고 싶을 때 사용하시면 됩니다.

최근에 javascript 파일에 대한 v=@_FINGERPRINT 정보를 추가 하기 위해 사용했습니다.


[참고문서]

https://github.com/beiliubei/maven-replacer-plugin/wiki/Usage-Guide

https://gist.github.com/ekcode/a338ec66c81bcaca1d9d


[pom.xml]

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warName>front-web-service-${version}</warName>
</configuration>
<executions>
<execution>
<id>prepare-war</id>
<phase>prepare-package</phase>
<goals>
<goal>exploded</goal>
</goals>
</execution>
</executions>
</plugin>

<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<version>1.5.2</version>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<filesToInclude>
**/layout.jsp
</filesToInclude>
<replacements>
<replacement>
<token>@_FINGERPRINT</token>
<value>${version}</value>
</replacement>
</replacements>
</configuration>
</plugin>


역시 구글링 하면 많은 예제 코드들이 나옵니다.

: