[NumPy] searchsorted
·
Programming
np.searchsorted sort가 된 기존의 ndarray A 에 대해,입력으로 주어지는 ndarray B 의 element들의 값을 보고기존의 ndarray A 의 어느 index에 놓이게 될지를 반환한다.반환되는 ndarray의 shape는 query에 해당하는 B와 같다.기본으로는 left를 기준으로 index를 반환한다. 같은 값이 이미 존재하는 경우, 해당 값의 위치의 left에 삽입하는 것으로 생각하고 index 반환.import numpy as nplist_a = [1, 2, 3, 4, 5]list_b = [2.5, 4]print(np.searchsorted(list_a, list_b)) 결과는 다음과 같다.[2 3]A는 [1, 2, 3, 4, 5]이고, B는 [2.5, 4]이다.ind..
[Basic] Literal
·
Programming
Literal소스 코드 상에서 고정된 값을 가르킴. (또는 고정된 값을 나타내는 표기법을 의미함.)Programming language에서 data의 값을 지정(specifying data values)하는 방법은 다음 중의 하나임.1. Literal을 사용.2. Variable을 사용 (constant variable포함).literal 은 문자 그대로 라는 뜻을 가짐.Programming 에서 literal은 주로 assignment의 right hand side에 주로 위치함!Python에서 literal은 Object임.C에서는 primitive datatype의 변수에 할당되는 값들을 주로 의미하나, Python에서는 literal도 object(객체)이다. 다음 코드는 x라는 변수에 9라는 값..
[DIP] opencv 에서 H264 encoding error
·
Programming/DIP
colab등에서 video를 재생시키는 처리를 하다가 계속 에러가 나서 헤맸다. HTML5에서 표준 비디오인코딩이 H264라 fourcc = cv2.VideoWriter_fourcc(*'H264')로 계속 처리를 했는데... 계속 정상동작을 안하는 문제에 봉착... 새로 테스트하던 부분만 신경쓰느라, cv2.VideoWriter instance가 아예 open이 안된 것을 놓쳤고 때문에 엄한 시간을 날렸다. 비디오는 잘 안다루다보니... 일단 현재 opencv의 python binding은 기본으로 H264 encoding을 제공하지 않는다. GPL 때문... If you installed this package via pip install opencv-python then there&#3..
[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에 따라 적절한 ..