분류 전체보기
-
pure function이란?(순수 함수)컴공지식/프로그래밍언어론 2024. 11. 16. 18:13
동일한 입력(저장소 포함)으로 항상 동일한 결과를 생성하는 순수 함수이라고 한다.setbox와 같은 상태를 변경하는 연산은 함수형 프로그래밍 관점에서 순수하지 않다고 할 수 있다.입력으로 동일한 박스와 동일한 값이 들어오더라도, 외부 저장소가 업데이트되기 때문에 상태(state)가 달라질 수 있기 때문이다.순수 함수형 프로그래밍은 보통 immutable(불변) 데이터를 선호하지만, 박스 같은 구조를 활용하면 함수형 스타일로 상태를 관리할 수 있는 방법을 제공한다.
-
php에 관하여컴공지식/웹 2024. 11. 15. 13:25
PHP는 웹 개발에서 오랫동안 쓰여온 언어다.전 세계 웹사이트의 약 78%가 PHP로 구동되는데, WordPress나 Facebook 같은 유명 사이트들도 이걸 쓴다.이 언어가 인기 있는 이유는 라라벨(Laravel), 심포니(Symfony), 코드이그나이터(CodeIgniter) 같은 다양한 프레임워크가 있어서다.그리고 데이터베이스랑 HTML이랑 통합하기도 간단해서 초보자도 쓰기 편하다.특히 PHP 7 버전부터는 메모리 사용량이랑 성능이 훨씬 좋아졌다. 그래서 요즘 웹 개발에서 PHP의 중요성이 더 높아졌다. PHP는 서버에서 실행되는 스크립트 언어다.웹 페이지를 더 동적이고 상호작용하게 만들어주는 도구다.HTML만으로는 부족하니까 이런 언어가 필요하다.그리고 PHP는 무료고, 오픈 소스라서 누구나 쉽..
-
평행선으로 이미지를 보정하는 방법컴공지식/컴퓨터비전 2024. 11. 11. 20:41
평행선 정보 확인: 주어진 왼쪽 이미지에서 파란색으로 표시된 두 선을 봐라. 이 선들이 실제로는 평행하지만 사진에서는 왜곡 때문에 기울어져 보여. 이런 왜곡을 사다리꼴 왜곡이라고 한다.평행선의 소실점 찾기: 평행한 선들이 기울어져 있다면, 이 선들을 연장했을 때 소실점(vanishing point)에서 만난다는 걸 이용할 수 있다. 소실점은 왜곡을 수정하는 데 필요한 기준이 되니까, 이 두 선을 연장해서 교차하는 점을 찾는다.이미지 변환 행렬 계산: 소실점과 평행선 정보를 사용해 이미지의 원근 왜곡을 보정하는 투영 변환(프로젝티브 트랜스폼)을 할 수 있다. 이미지 처리 도구(OpenCV 등)를 사용해서, 이 소실점 정보를 이용한 변환 행렬을 계산해주면 된다.투영 변환 적용: 이제 계산된 변환 행렬을 이미..
-
퍼스펙티브 변환 과정 예시컴공지식/컴퓨터비전 2024. 11. 11. 20:39
종이의 왜곡된 모서리들을 잡아당겨서 직사각형으로 만들면 된다1. 코너 점 찾기:먼저 왼쪽 이미지에서 네 개의 코너 점을 찾아야 한다. 이미지의 좌상단, 우상단, 좌하단, 우하단에 해당하는 점들을 잡아내는거다.2. 대상 점 설정하기:변환하고 싶은 목표 위치를 설정해야 한다. 원하는 모양이 직사각형이니까, 새 이미지에서 코너 점들을 평평한 직사각형 형태(예를 들어, (0, 0), (width, 0), (width, height), (0, height))로 지정해주면 된다.3. 변환 행렬 계산:이제 OpenCV 같은 라이브러리를 사용해서 원래 점들(왜곡된 모서리)에서 대상 점들(직사각형 모서리)로 변환하기 위한 행렬을 계산한다. 이걸 호모그래피 행렬이라고 부른다. 이 행렬이 이미지 왜곡을 수정하는 역할을 하는..
-
vs문 이해 예시컴공지식/프로그래밍언어론 2024. 11. 10. 16:22
주의할 점은 BoxV를 쓰는 곳이 Box를 생성하는 부분이라는 점그리고 Box가 메모리 주소 1번을 간접 참조한다는 점
-
Projective transformation컴공지식/컴퓨터비전 2024. 11. 9. 22:42
프로젝티브 변환은 8개의 자유도를 가지며, 네 점 간의 크로스 비율만 유지되는 변환이다. 나머지 각도, 거리, 평행성은 변할 수 있다. 무한대 직선이 유한한 곳으로 이동하는 변환이다. 프로젝티브 변환(호모그래피)은 한 평면의 점을 다른 평면의 점으로 변환해서 서로 다른 각도에서 찍은 평면 이미지의 원근 왜곡을 보정하거나 동일한 평면으로 맞춰보는 데 유용한 방법이다. 호모그래피는 3x3 행렬로 표현되는 평면 변환이며, 한 직선 위의 점들이 변환 후에도 같은 직선 위에 유지되는 특징이 있다.프로젝티브 변환을 적용하려면 최소 네 쌍의 대응점이 필요하고, 이를 통해 3x3 행렬의 여덟 개 요소를 계산해 변환을 적용할 수 있다. getPerspectiveTransform 함수는 네 쌍의 대응점을 이용해 3x3 투..