[DIP] Kornia 소개
·
Programming/DIP
https://github.com/kornia/kornia GitHub - kornia/kornia: Open Source Differentiable Computer Vision Library Open Source Differentiable Computer Vision Library - GitHub - kornia/kornia: Open Source Differentiable Computer Vision Library github.com Kornia는 PyTorch를 위한 differentiable computer vision library 이다. 일반적인 computer vision problem들을 해결할 수 있는 다양한 함수와 differentiable module들로 구성되어 있다. 기본적으로 P..
[Programming] Primitive Data Type : C, C++, NumPy, Torch
·
Programming
Primitive Data Type이(Unboxed type)란?C, C++, NumPy, PyTorch, TensorFlow 등에서 사용되는numeric data type들은보통 unboxed type 이라고도 불리는 primitive data type들이다.unboxed type에서는할당된 메모리 bit들이 해당 numeric data type의 특정 값을 표현하는데 다 사용되고해당 type이 고유의 meta data나 methods 등을 가지고 있지 않음.C프로그래밍을 배운 이들에게 이는 매우 당연하게 받아들여지는 개념이다.이와 달리 boxed type이란,unboxed type처럼 값을 저장하는 메모리 bit들 외에도,1) 가지고 있는 값에 대한 meta data 및2) 값과 meta data를 ..
[PyQt] Event and Event Handling 작동방식
·
Programming
PyQt에서 Event와 Event Handling PyQt도 다른 GUI application framework에서처럼 Event를 추상화한 Class를 제공하고, 이 Class를 Event의 다양한 종류에 따라 상속시킨 sub class를 제공한다. QEvent가 Event를 추상화한 class이다, 특정 Event가 발생시 Qt는 해당 Event를 추상화한 QEvent의 subclass의 instance를 생성하고 해당 evnet의 종류에 따라 조금 다른 전달방식을 따르지만 결국은 이 instance를 해당 event를 처리할 QObject instance에 event()메서드를 통해 전달한다. event()메서드에서 해당 event는 직접 처리되지는 않고 해당 evnet의 type에 따라 적절한 ..
[Programming] Library vs. Framework
·
Programming
Library vs. Framework이 둘을 명확히 구분하는 정의는 사실 없다고 봐야한다.개인적으로 호출 시점과 같은 흐름에 대한 자유도로 나누는 견해가 가장 맞는 구분 같지만...우선 두 용어가 가지는 대략적인 느낌의 차이 정도만 알고 있으면 특정 라이브러리 혹은 프레임워크들을 사용할 때 어느정도 수준으로 기능들이 제공되는지를 파악하는데 도움이 되기 때문에 정리해 둔다.보면 알겠지만, framework라면 SW의 흐름 (또는 lifecycle이라고도 함)이 이미 정해진 경우가 많아서 제대로 사용하려면 특정 function이나 class파악하는 수준이 아닌 시작품을 만드는 tutorial 정도는 살펴봐야 사용이 가능하다. LibrarySW의 구성요소 중 하나로, 특정 플랫폼에서 개발 중인 SW에특정 기..
[DIP] Dithering
·
Programming/DIP
다음은 wikipedia의 정의임. Dither is an intentionally applied form of noise used to randomize quantization error, preventing large-scale patterns such as color banding in images. Dither is routinely used in processing of both digital audio and video data. 즉, 의도적으로 삽입된 noise인데 이를 사람이 보거나 들을 때, quantizaiton error를 randomize하여 최소화된 qunantization error를 느끼게 하는 것이다. 실제로 256 단계의 gray-scale이미지를 0,1의 binary im..
[PyQt6] Install PyQt6 on Windows
·
Programming
주의 (2025.02)현재 PySide6 의 경우 Windows 11 에서 conda를 통해 설치가 잘 된다 (designer.exe도 qt-main을 통해 지원).꼭 PyQt6가 필요치 않고, PySide6로 대체가 가능하다면 다음 URL을 참고할 것.https://ds31x.tistory.com/372 [PySide6] Installing PySide6 (and Designer) on Windows (with Conda)기존에 conda 가상환경에 다시 pip로 설치를 했었는데,conda를 25.1.1 로 업데이트하고 PySide6와 designer를 설치하니 제대로 설치가 됨. Prerequisiteconda : conda-forge 채널에서 설치.os : Windows11, 23H2 (22631...