컴공지식
-
ORB란?컴공지식/컴퓨터비전 2024. 10. 24. 15:37
ORB는 Oriented FAST and Rotated BRIEF의 약자다.빠르고 효율적인 피처 추출 알고리즘이다. FAST (피처 감지)는 모서리를 감지하는 알고리즘이다.한 픽셀 주위에 있는 9개 연속 픽셀이 기준 픽셀보다 더 밝거나 어두우면, 그 점을 코너로 판단한다. 코너를 찾았다면, 이제 그 코너를 숫자로 표현해야 서로 비교할 수 있다. 이때 쓰는 게 BRIEF (특징 설명자)다.간단한 이진 패턴(binary pattern)으로 특징을 표현하는데, ORB는 이 BRIEF를 회전(rotation)에 강하게 개선해서 쓰는 거고, 그래서 "Rotated BRIEF"라고 부르는 거다.ORB는 빠르고 메모리 효율적이면서도, 회전과 크기 변화에 강하다.
-
Image feature(이미지 특징)란?컴공지식/컴퓨터비전 2024. 10. 24. 15:01
이미지 특징은 이미지 안에 있는 유용한 정보를 말한다.예를 들어, 이미지 속에 있는 점, 가장자리, 물체 같은 특정 구조가 feature다.또 어떤 feature는 이미지 주변부에서 추출되는 정보, 즉 필터나 특징 감지 알고리즘을 써서 뽑아내는 결과일 수도 있다. 좋은 feature란, 이미지가 바뀌어도 변하지 않는 특징을 말한다.그래야 컴퓨터가 같은 물체를 제대로 인식할 수 있다.조명, 물체의 이동, 크기 변화, 회전, 원근변화, 이런거에 영향을 받지 않는 것이 좋은 특징이다.좋은 특징의 추가 조건으로는 연산 비용이 적고 메모리 효율적이어야 한다.
-
노드에 접근하는 법컴공지식/웹 2024. 10. 14. 22:02
HTML이나 XML 같은 문서에서 노드(node), 즉 태그나 요소들을 어떻게 접근할까 getElementsByTagName() 메서드를 사용하는 방법: 이 메서드는 특정 태그 이름을 가진 모든 요소들을 반환해준다.예를 들어, p 태그로 된 모든 요소를 가져오고 싶으면 document.getElementsByTagName("p") 이렇게 쓴다.노드 트리를 순회하는 방법: 반복문을 돌려 모든 노드를 순회한다.노드 관계를 통해 탐색하는 방법: 이건 부모, 자식, 형제 노드 같은 관계를 이용해서 트리를 타고 다니는 거다. 일단 예시를 또 살펴보자x.getElementsByTagName("title"); 요소 안에 있는 title 태그들을 찾는 거다.xmlDoc.getElementsByTagName("titl..
-
람다 표현식이란?컴공지식/프로그래밍언어론 2024. 10. 12. 17:04
람다 표현식은 익명 함수다. 평소에 사용하는 함수처럼 따로 이름을 붙이지 않고, 필요할 때 바로 사용할 수 있는 일회성 함수를 말한다.(x: Int, y: Int) => x + y 이런 느낌으로 간단하게 쓰인다. 람다 표현식의 장점은 여러 가지가 있다.반복적으로 사용되는 코드를 람다로 정의하면 훨씬 짧고 간단해진다.그리고 함수 정의 자체를 재사용할 수 있는 장점이 있다. 하지만 역시 단점도 있다.람다 표현식은 익명 함수라서 컴파일러가 최적화하기가 조금 더 까다롭다.그래서 코드가 더 느리게 동작할 수도 있다.람다 표현식은 이름이 없기 때문에 디버깅할 때 함수 호출 스택을 추적하기 어려워지기도 한다.아무튼 코드를 헷갈리게 만들 수 있다는 단점이 있다.
-
First-class function컴공지식/프로그래밍언어론 2024. 10. 12. 17:00
일급함수(First-class function)이란 함수 자체가 다른 값처럼 취급될 수 있는 걸 말한다.그렇기 때문에 다른 함수의 인자값으로 들어갈 수 있다. 추상문법에서는 다음과 같이 정의될 수 있겠다.App이 함수를 부르는 쪽인데 기존의 App 함수와 달라진 부분은 ftn인자값의 형태가 Expr이라는거다.즉, Expr을 상속하고 있는 Fun 또한 이 인자값이 될 수 있다는 것을 의미한다. 여기서 사용 예를 볼 수 있는데, 왼쪽의 콘크리트 문법을 보면 첫번째 줄은 함수를 인자로 넣고 10이 함수의 인자가 되는 것을 볼 수 있다.근데 두번째 줄도 첫번째 줄과 시멘틱적으로 똑같다.왜냐면 with로 인해 y가 fun이 되는데 y에 10을 넣는다는 것은 함수의 인자에 10을 넣는거나 마찬가지이기 때문이다. 우..
-
XML 스키마에 대해서컴공지식/웹 2024. 10. 12. 00:37
일단 어떻게 생긴지 먼저 봐야하지 않겠나 http://www.w3.org/2001/XMLSchema"> ..
-
[XML]DTD와 스키마컴공지식/웹 2024. 10. 12. 00:01
스키마는 '이렇게 해야 해'라고 규칙을 정해놓는 거랑 비슷한 거다.그 XML 파일이 '어떻게 생겨야 하는지', '어떤 데이터가 들어가야 하는지' 알려주는 일종의 설명서다. 그럼 DTD도 비슷한 것 같은데 이 둘의 차이는 뭘까?DTD와 XML 스키마 둘 다 XML 문서의 구조를 정의하는 역할을 한다.하지만 DTD는 아주 오래되고 구식이다. XML 스키마는 좀 더 최신식이고 강력하다. DTD는 문자열 타입만 제대로 지원해서 복잡한 데이터 타입을 다루는 데는 한계가 있다. XML 스키마는 숫자, 날짜 같은 다양한 데이터 타입을 지원해서 더 유연하고 강력하다.DTD는 아주 단순하고 텍스트 기반이고, 간단한 규칙만 정의할 수 있는데,XML 스키마는 XML 자체로 작성되어 더 정교하고 복잡한 규칙을 정의할 수 있다..