보셀 오브젝트 (3D 배열)를 그리기 위해 R에 라이브러리 또는 함수가 있는지 알고 있습니까? 3d scatter plot을 수행 할 수있는 rgl 패키지를 찾았지만 3D 배열과 함께 작동하는 "image"함수와 동등한 기능을 찾고 있습니다. 감사합니다.Voxel 이미지를 그림에 그려야합니다.
2
A
답변
2
다음은 rgl 패키지를 사용하는 기본 예제입니다. 관심있는 색상, 알파 또는 기타 기능을 변경하기 위해 3D 배열에서 작동하는 기능으로 쉽게 만들 수 있습니다.
library(rgl)
cubit=cube3d(color="blue", alpha=0.3)
cubit$vb[cubit$vb == -1]= 0
gridx=0:5;gridy=0:5;gridz=0:5
temp=cubit
plot3d(temp,box=FALSE,axes=FALSE,xlab="",ylab="",zlab="")
wire3d(temp,add=TRUE,color="blue",alpha=1)
for(ix in gridx){
for(iy in gridy){
for(iz in gridz){
temp$vb[1,]=cubit$vb[1,]+ix
temp$vb[2,]=cubit$vb[2,]+iy
temp$vb[3,]=cubit$vb[3,]+iz
shade3d(temp,add=TRUE,,alpha=runif(1))
wire3d(temp,add=TRUE,color="blue")
}
}
}
것은이 같은 뭔가를 사용했다, 그러나 나는 (내가 3-4Gb RAM을 사용하여 이상 60,000 복셀을 할 수 없다) 메모리 크기가 매우 빠르게 성장 주목했다. 나는 비대화 형 플롯이 더 많은 메모리를 효율적으로 사용할 수 있다고 생각하는 plot3D 패키지에서 cube3D를 사용하여 유사한 것을 시도했지만, 어떤 이유로이 패키지는 성능이 떨어졌습니다 (단지 1000 개의 보셀). 솔리드 큐브가 있다면 ploygon3D 플롯을 사용하여 바깥 쪽 가장자리를 그릴 때 훨씬 똑똑해질 수 있습니다.하지만 그건 내 경우가 아닙니다. 나는 여전히 R 기능을 사용하여 더 나은 성능을 찾고 있지만, 경로를 여기에서 교차하는 다른 방황하는 영혼의 경우에도이 대화에 추가해야한다고 생각했습니다.
관련 문제
- 1. 런타임에서 3d 이미지를 그려야합니다.
- 2. Voxel 애니메이션
- 3. Sparse Voxel Octrees
- 4. C#의 Voxel 지형
- 5. Voxel 엔진 및 최적화
- 6. 이미지를 투명하게 만들기 위해 UIImageView 위에 그려야합니다.
- 7. UIView로 그려야합니다.
- 8. 그림에 scrollpane
- 9. 점을 그려야합니다.
- 10. 화면에 그려야합니다.
- 11. GLUT가 숨겨진 선만 그려야합니다.
- 12. 코코아로 뷰를 강제로 그려야합니다.
- 13. 안드로이드에서 빨리 그려야합니다.
- 14. 안드로이드 화면을 터치했을 때 이미지를 새로운 위치로 다시 그려야합니다.
- 15. Voxel 기반 지형에 적합한 밀도 함수는 무엇입니까?
- 16. 그림에 파란색 효과 적용
- 17. 그림에 노이즈 효과 추가
- 18. 자바 애플릿이있는 그림에 대해
- 19. 그림에 숨겨진 값 추가
- 20. 하나의 그림에 애니메이션 적용
- 21. drawRect 그림에 대한 애니메이션
- 22. MigraDoc 그림을 그림에 붙이십시오.
- 23. Facebook 그림에 친구 표시하기
- 24. 이미지에 상자를 그려야합니다, 자바 스크립트?
- 25. 스핑크스 이미지 또는 그림에 대한 링크 추가
- 26. R에 다중 곡선을 그려야합니다.
- 27. 줄을 연속 선으로 그려야합니다
- 28. 내 앱에서 차트를 그려야합니다
- 29. glVertexPointer - 불필요한 라인을 그려야합니다.
- 30. matlab에서 결정 경계를 그려야합니다.
[Medical Imaging 작업보기] (http://cran.r-project.org/web/views/MedicalImaging.html)를 살펴 보는 것이 좋습니다. 3 차원 이미지를 슬라이스 할 수있는 패키지가 있습니다. 시각화 내에서 유용한 다른 요소가 무엇인지 모르겠습니다. – mnel
표시 할 항목에 대한 세부 정보를 제공 할 수 있습니까? 예를 들어, 사소한 복셀 디스플레이는 점들의 3D 분산 형 플롯 일 수 있으며, 각 점은 관심 변수를 나타 내기 위해 색상을 사용합니다. 각 좌표 위치에서 큐브 (프레임 또는 음영)를 플로팅하려는 경우, 큐브 플로팅 루틴을 작성하고 해당 제품을 3D 산점도에 매핑하는 문제입니다. –
@CarlWitthoft, 사실, RGL 패키지는 3D 산점도에 대한 멋진 플롯 팅 기능을 가지고 있지만 이것이 필자의 필요와 일치하지 않습니다. 이미지 함수가 2 차원 행렬을 그려주는 것처럼 3 차원 배열을 그릴 수있는 함수를 찾고 싶습니다. 배열의 각 작은 상자는 큐브의 색이 값과 관련하여 (변수가 무엇이든간에) 코드화 될 플롯의 큐브로 표시됩니다. clunky하고 느린 코딩을 시도하기 전에 누군가가 이미 그러한 프로그래밍을하고 있는지 확인하고 싶습니다. 그래도 고마워. – Simon