패키지에서 numpy는 두 개의 함수 크기 변경 및 모양 변경입니다. 내부적으로 어떻게 작동합니까? 그들은 어떤 보간법을 사용합니까? 코드를 살펴 보았지만 이해하지 못했습니다. 누구든지 나를 도울 수 있습니까? 또는 이미지의 크기가 어떻게 조정됩니까? 픽셀은 어떻게됩니까?numpy.resize 및 numpy.reshape 함수는 어떻게 파이썬에서 내부적으로 작동합니까?
3
A
답변
2
내가 아는 한 numpy.reshape()
은 매트릭스를 재구성합니다 (이미지인지 여부는 중요하지 않음). 보간을하지 않고 행렬의 항목을 조작합니다.
a = np.arange(12).reshape((2,6))
a= [[ 0 1 2 3 4 5]
[ 6 7 8 9 10 11]]
b=a.reshape((4,3))
b=[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 9 10 11]]
5
어느 쪽도 보간하지 않습니다. 그리고 이미지의 보간과 픽셀에 대해 궁금해하는 경우, 아마도 원하는 기능이 아닙니다. 이미지의 해상도를 조작하는 일부 image
패키지 (예 : scipy
)가 있습니다.
모든 numpy
배열에는 shape
속성이 있습니다. reshape
은 데이터를 전혀 변경하지 않고 변경합니다. 새 모양은 원래 모양과 동일한 총 요소 수를 참조해야합니다.
x = np.arange(12)
x.reshape(3,4) # 12 elements
x.reshape(6,2) # still 12
x.reshape(6,4) # error
np.resize
덜 일반적으로 사용하지만, 파이썬으로 작성된 및 연구에 사용할 수 있습니다. 당신은 그것의 문서를 읽어야하고, x.resize
은 다릅니다. 더 커지면 사실 값이나 패드가 0으로 반복됩니다. 1D 행동 크기 조정
예 :
In [366]: x=np.arange(12)
In [367]: np.resize(x,6)
Out[367]: array([0, 1, 2, 3, 4, 5])
In [368]: np.resize(x,24)
Out[368]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 0, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11])
In [369]: x.resize(24)
In [370]: x
Out[370]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0])
최근의 질문에 대한 scipy.misc.imresize
. 또한 scipy.ndimage.zoom
참조 : 워드 프로세서
+1
_ "reshape는 ['.shape']"_을보다 정확하게 변경합니다. 실제로 호출 된 객체를 수정하는 대신 변경된 뷰를 만듭니다 – Eric
관련 문제
- 1. clock() 함수는 내부적으로 어떻게 작동합니까?
- 2. DISTINCT는 어떻게 내부적으로 작동합니까?
- 3. 변수 교환은 어떻게 내부적으로 작동합니까?
- 4. printf는 내부적으로 어떻게 작동합니까?
- 5. stringstream은 어떻게 내부적으로 작동합니까?
- 6. typedef는 내부적으로 어떻게 작동합니까?
- 7. LINQ는 내부적으로 어떻게 작동합니까?
- 8. Calabash는 내부적으로 어떻게 작동합니까?
- 9. 데이터베이스가 내부적으로 어떻게 작동합니까?
- 10. 근검은 어떻게 내부적으로 작동합니까?
- 11. .SD는 내부적으로 어떻게 작동합니까?
- 12. CGContextClipToMask는 내부적으로 어떻게 작동합니까?
- 13. Firebug는 내부적으로 어떻게 작동합니까?
- 14. Viewstate는 내부적으로 어떻게 작동합니까?
- 15. 정적 함수는 내부적으로 어떻게 매핑됩니까?
- 16. 반사 및 원격 작업은 어떻게 내부적으로 작동합니까?
- 17. 직렬화 및 역 직렬화는 어떻게 내부적으로 작동합니까?
- 18. 파이썬 re.sub() 함수는 어떻게 작동합니까?
- 19. 서비스는 어떻게 안드로이드에서 내부적으로 작동합니까?
- 20. CreateMutex()는 내부적으로 어떻게 작동합니까?
- 21. LinkedList는 Java에서 내부적으로 어떻게 작동합니까?
- 22. canvas.width = canvas.width는 내부적으로 어떻게 작동합니까?
- 23. 배열이 Java에서 내부적으로 어떻게 작동합니까?
- 24. 내부적으로 Java ConcurrrentHashMap이 어떻게 작동합니까?
- 25. joomla breadcrumbs는 어떻게 내부적으로 작동합니까?
- 26. SQLite 커서는 내부적으로 어떻게 작동합니까?
- 27. "is"연산자는 내부적으로 어떻게 작동합니까?
- 28. ASP.NET 라우팅은 어떻게 내부적으로 작동합니까?
- 29. 람다 식은 어떻게 내부적으로 작동합니까?
- 30. Spring에서 내부적으로 packagesToScan을 어떻게 작동합니까?
: 새로운 배열 원의 배열보다 큰 경우, 새로운 배열이 반복 복사로 채워진다. https://docs.scipy.org/doc/numpy/reference/generated/numpy.resize.html – user4421975
'np.resize'도 아니고'np.reshape'도 이미지 크기 조정에 적합하지 않습니다. Numpy는 이미지가 아니라 배열에 관한 것입니다. – Eric