vtk資料的讀寫
1.單張圖片的讀取:
vtkPNGReader
不過為啥儲存的顏色變了呢
#include <vtkSmartPointer.h>
#include <vtkPNGReader.h>
#include <vtkJPEGWriter.h>
#include <vtkImageViewer2.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkInteractorStyleImage.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
int main()
{
vtkSmartPointer<vtkPNGReader>reader = vtkSmartPointer<vtkPNGReader>::New();
reader->SetFileName("../VTK-logo.png");
//vtkSmartPointer<vtkImageView2>imageViewer = vtkSmartPointer<vtkImageView2>::New();這裡由於少寫了一個r 導致CE==
vtkSmartPointer<vtkImageViewer2> imageViewer = vtkSmartPointer<vtkImageViewer2>::New();
imageViewer->SetInputConnection(reader->GetOutputPort());//寫setinput不可以
vtkSmartPointer<vtkRenderWindowInteractor>renderWindowInteractor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
imageViewer->SetupInteractor(renderWindowInteractor);
imageViewer->Render();
imageViewer->GetRenderer()->ResetCamera();
imageViewer->Render();
vtkSmartPointer<vtkJPEGWriter>writer = vtkSmartPointer<vtkJPEGWriter>::New();
writer->SetFileName("vtk-logo.jpg");
writer->SetInputConnection(reader->GetOutputPort());
writer->Write();
renderWindowInteractor->Start();
}
2.一系列影象資料的讀取
多了vtkStringArray 和正常的string不一樣~~
#include <vtkSmartPointer.h>
#include <vtkJPEGReader.h>
#include <vtkImageViewer2.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkInteractorStyleImage.h>
#include <vtkRenderer.h>
#include <vtkStringArray.h>
#include <vtkRenderWindow.h>
int main()
{
/*vtkSmartPointer<vtkStringArray>fileArray = vtkSmartPointer<vtkStringArray>::New();
char fileName[128];
for (int i = 1; i < 100; i++)
{
sprintf(fileName, "../data/Head/head%03d.jpg", i);
vtkstd::string fileStr(fileName);
fileArray->InsertNextValue(fileStr);
}*/
vtkSmartPointer< vtkStringArray > fileArray = vtkSmartPointer< vtkStringArray >::New();
char fileName[128];
for (int i = 1; i < 100; i++)
{
sprintf(fileName, "../data/Head/head%03d.jpg", i);
vtkstd::string fileStr(fileName);
fileArray->InsertNextValue(fileStr);
}
vtkSmartPointer<vtkJPEGReader>reader = vtkSmartPointer<vtkJPEGReader>::New();
reader->SetFileNames(fileArray);
vtkSmartPointer<vtkImageViewer2>imageViewer = vtkSmartPointer<vtkImageViewer2>::New();
imageViewer->SetInputConnection(reader->GetOutputPort());
vtkSmartPointer<vtkRenderWindowInteractor>renderWindowInteractor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
imageViewer->SetSlice(50);//預設顯示第50 切片
imageViewer->SetSliceOrientationToXY();
imageViewer->SetupInteractor(renderWindowInteractor);
imageViewer->Render();
renderWindowInteractor->Start();
return 0;
}
記得檔名需要是有規律的相關文章
- 【Python】將網格資料寫入到VTK檔案Python
- HBase資料的讀寫流程
- 資料讀寫流程
- TensorFlow讀寫資料
- io流對資料的讀寫
- 資料讀寫壓力大,讀寫分離
- Pandas讀寫資料庫資料庫
- 資料庫讀寫分離資料庫
- 大資料系列2:Hdfs的讀寫操作大資料
- Redis資料儲存和讀寫Redis
- JuiceFS 資料讀寫流程詳解UI
- Java mysql blob 資料讀寫操作JavaMySql
- 教程:使用DataLakeAnalytics讀/寫RDS資料
- 醫學影像處理中的資料讀寫
- 做資料庫分離讀寫時,sqlServer資料庫資料同步的問題:資料庫SQLServer
- Python對Hadoop資料進行讀寫PythonHadoop
- 使用Data Lake Analytics讀/寫RDS資料
- JavaScript 讀寫二進位制資料JavaScript
- VTK QT 之 RenderWindowNoUiFileQTUI
- VTK QT 之 RenderWindowUISingleInheritanceQTUI
- 大資料資料庫讀寫分離分庫分表大資料資料庫
- MySQL 中讀寫分離資料延遲MySql
- 資料庫讀寫分離Master-Slave資料庫AST
- ssm讀寫分離多資料來源SSM
- 大資料實踐解析(下):Spark的讀寫流程分析大資料Spark
- 【詳解】換一個角度看Socket的資料讀寫
- 資料庫的讀寫分離與負載均衡策略資料庫負載
- Blazor 呼叫 Clipboard API 讀寫剪貼簿資料BlazorAPI
- 資料庫治理利器:動態讀寫分離資料庫
- TDengine可通過資料同步工具 DataX讀寫
- Logstash讀取Kafka資料寫入HDFS詳解Kafka
- Spring Aop實現資料庫讀寫分離Spring資料庫
- MapReduce資料序列化讀寫概念淺析!
- 數倉血緣關係資料的儲存與讀寫
- Androidxml資料的讀取和寫入(sax,pull,dom,xstream,jsoup)AndroidXMLJS
- 利用VTK和PyQt5對醫學體資料進行渲染並展示QT
- Django 直接使用資料庫連線和遊標讀寫資料庫Django資料庫
- 用 logstash 從 kafka 讀取資料寫入 Elasticsearch(qbit)KafkaElasticsearch
- shardingjdbc + jpa 完成讀寫分離配置及資料分片JDBC