2016-06-06 2 views
-4

OpenCV를 사용하여 각각 myMatrix, myMatrix2canvas이라는 3 개의 C++ 행렬이 있습니다. 나는 C++에 익숙하지 않기 때문에 Range :: all()이 무엇을하는지 분명하지 않다. 두 번째 Range 문을 이해하고 Range::all()Range(0,myMatrix.rows)과 같으면 궁금합니다. 내가 제대로 이해 않은 경우Numpy의 C++에서 매트

canvas = np.copy(myMatrix[:][:myMatrix2.cols]) 
+2

C++ *에서 두 개의 행렬을 어떻게 갖지 만 파이썬 구문 만 볼 수 있습니까? : S 정확히 무엇을하려고합니까? 그리고 언어, 파이썬 또는 C++에서? 파이썬에 상응하는 C++ 구문을 번역한다는 것을 의미합니까? –

+0

@ImanolLuengo C++ 구문을 파이썬으로 변환하려고합니다. 사과드립니다. 둘 다 3 개의 매트릭스가 있습니다. – Apollo

+0

작전 나는 방금 질문을 편집하고 있었고, 나는 대답하려고 노력할 것이다. –

답변

3

의 NumPy와 동등한은 다음과 같이 쓸 수있다 :

canvas = np.copy(myMatrix[:, :myMatrix2.shape[1]]) 

는 것을 모두 myMatrix 및 가정

myMatrix.copyTo(canvas(Range::all(), Range(0, myMatrix2.cols))); 

나는 뭔가를해야한다 생각하고 있어요 myMatrix2이 존재합니다. canvas도 사전에 파이썬에있는 경우, 당신은 (오히려 새 복사본을 만드는 대신) 그것을 올바른 위치를 업데이트 할 수 있습니다

:
canvas[:] = myMatrix[:, :myMatrix2.shape[1]] 

Range(0, myMatrix2.cols)에 해당 Range::all():myMatrix2.shape[1] 상태에 해당합니다.

무언가를 무턱대고 시도하는 대신 numpy (great manual)를 사용하는 방법을 먼저 배워야합니다.

+0

감사합니다. 설명서를 읽을 것입니다. 이 일을 끝내기 위해 서두르다. 고맙습니다. – Apollo