영상처리/OpenCV

matrix 클래스

성혜영 2022. 6. 7. 14:15

matrix 클래스 : 입력 배열을 행렬로 해석해서 사용하는 클래스, 행렬 연산 특화 2차원 배열

 

ndarray 클래스는 곱(*)과 제곱(**) 연산을 각 원소에 대해 수행.

matrix 클래스는 곱(*)과 제곱(**)을 행렬 간의 연산으로 처리

 

import numpy as np



array1 = np.array([1,2,3,4]).reshape(2,2)

array2 = np.array([5,6,7,8]).reshape(2,2)



mat1 = np.mat(array1)

mat2 = np.mat(array2)



print(mat1.T * mat2)

print(mat1 ** 2)

<matrix 행렬 생성>

[[26 30]

 [38 44]]

[[ 7 10]

 [15 22]]

 

matrix 클래스는 행렬 연산에 특회된 클래스임. 공액 복소수 전치나 곱의 역함수 등으로 변환하기 위해 별도의 함수를 구성하지 않아도 되며, 속성에 미리 정의되어 있음.

*.T -> 전치 (array 배열에서도 사용 가능)

*.H -> 공액 복소수 전치

*.I -> 곱의 역함수

*.A -> ndarray 클래스

 

※ numpy 라이브러리(선형대수학)에서는 matrix 클래스의 사용을 권장하지 않음. 

추후 삭제 가능성 有

 

'영상처리 > OpenCV' 카테고리의 다른 글

ndarray 클래스 - 관심채널  (0) 2022.06.07
ndarray 클래스 - 관심영역  (0) 2022.06.07
배열 연산  (0) 2022.06.07
배열 병합 및 분리  (0) 2022.06.07
배열 차원 변형  (0) 2022.06.07