原文地址:http://blog.csdn.net/chinamming/article/details/16829569

[效果演示]

根据脚部的骨骼CT扫描的照片,利用VTK完成读取和三维重建.

[程序实现]

void main ()
{
vtkRenderer *aRenderer = vtkRenderer::New();
vtkRenderWindow *renWin = vtkRenderWindow::New();
renWin->AddRenderer(aRenderer);
vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
iren->SetRenderWindow(renWin);
vtkDICOMImageReader *v16 = vtkDICOMImageReader::New();
v16->SetDataByteOrderToLittleEndian();
v16->SetDirectoryName("Foot-CTs");
v16->SetDataSpacing (3.2, 3.2, 1.5);
vtkContourFilter *skinExtractor = vtkContourFilter::New();
skinExtractor->SetInputConnection(v16->GetOutputPort());
skinExtractor->SetValue(0, 500);
vtkPolyDataNormals *skinNormals = vtkPolyDataNormals::New();
skinNormals->SetInputConnection(skinExtractor->GetOutputPort());
skinNormals->SetFeatureAngle(60.0);
vtkPolyDataMapper *skinMapper = vtkPolyDataMapper::New();
skinMapper->SetInputConnection(skinNormals->GetOutputPort());
skinMapper->ScalarVisibilityOff();
vtkActor *skin = vtkActor::New();
skin->SetMapper(skinMapper);
vtkOutlineFilter *outlineData = vtkOutlineFilter::New();
outlineData->SetInputConnection(v16->GetOutputPort());
vtkPolyDataMapper *mapOutline = vtkPolyDataMapper::New();
mapOutline->SetInputConnection(outlineData->GetOutputPort());
vtkActor *outline = vtkActor::New();
outline->SetMapper(mapOutline);
outline->GetProperty()->SetColor(0,0,0);
vtkCamera *aCamera = vtkCamera::New();
aCamera->SetViewUp (0, 0, -1);
aCamera->SetPosition (0, 1, 0);
aCamera->SetFocalPoint (0, 0, 0);
aCamera->ComputeViewPlaneNormal();
aRenderer->AddActor(outline);
aRenderer->AddActor(skin);
aRenderer->SetActiveCamera(aCamera);
aRenderer->ResetCamera ();
aCamera->Dolly(1.5);
aRenderer->SetBackground(1,1,1);
renWin->SetSize(640, 480);
aRenderer->ResetCameraClippingRange ();
// Initialize the event loop and then start it.
iren->Initialize();
iren->Start();
v16->Delete();
skinExtractor->Delete();
skinNormals->Delete();
skinMapper->Delete();
skin->Delete();
outlineData->Delete();
mapOutline->Delete();
outline->Delete();
aCamera->Delete();
iren->Delete();
renWin->Delete();
aRenderer->Delete();
}  

原文地址:http://blog.csdn.net/chinamming/article/details/16829569

VTK三维重建(2)-根据脚部骨骼CT的三维重建和显示相关推荐

  1. 工业CT之三维重建技术

    目前,国内现有的工业CT设备绝大多数是基于线阵探测器的断层扫描技术. 该技术主要是通过观察二维图像去发现单层断面上的损伤部位,至于能准确地确定损伤部位的空间位置.大小.几何形状等,仅通过观察二维切片图 ...

  2. MATLAB学习之图像增强、线性运算、非线性运算、CT图像的开窗显示

    图像增强的目的 图像增强的目标是通过处理图像,提高图像重要细节信息或者目标的辨识度,使其比原始图像更适应于特定应用. 不增加图像的信息内容,但是增加特定特征的动态范围( dynamic range ) ...

  3. matlab 断层 体三维重建,利用Matlab实现原木CT断层图像的三维重建

    利用Matlab实现原木CT断层图像的三维重建 运用MATLAB7.0软件中的图象处理工具箱实现了原木C (本文共4页) 阅读全文>> 目的:研究利用初步建立的三维模型确定二维断层图像感兴 ...

  4. 头部 CT 图像三维重建

    开放数据集 开放数据集:http://headctstudy.qure.ai/dataset 其中某个样本:CQ500CT181 数据处理 导入可能要用的包 import pydicom import ...

  5. [结构光三维重建] 2、基于结构光的三维重建系统工作原理总结

    概念 基于结构光三维重建系统模型,如下图所示: 基于结构光的三维成像,实际上是三维参数的测量与重现,需要主动去投射结构光到被测物体上,通过结构光的变形来确定被测物的尺寸参数,是一种主动三维测量方式. ...

  6. 人体骨骼坐标在彩色图像中显示

    // YeNite2SimpleUsingOpenCV.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostr ...

  7. 基于几何学习图像的三维重建发展_基于深度学习的三维重建算法:MVSNet、RMVSNet、PointMVSNet、Cascade系列...

    欢迎关注微信公众号"3D视觉学习笔记",分享博士期间3D视觉学习收获 MVSNet:香港科技大学的权龙教授团队的MVSNet(2018年ECCV)开启了用深度做多视图三维重建的先河 ...

  8. C#开发PACS医学影像三维重建(十三):基于人体CT值从皮肤渐变到骨骼的梯度透明思路

    当我们将CT切片重建为三维体之后,通常会消除一些不必要的外部组织来观察内部病灶, 一般思路是根据人体常见CT值范围来使得部分组织透明来达到效果, 但这是非黑即白的,即,要么显示皮肤,要么显示神经,要么 ...

  9. C#开发PACS医学影像三维重建(一):使用VTK重建3D影像

    VTK简介: VTK是一个开源的免费软件系统,主要用于三维计算机图形学.图像处理和可视化.Vtk是在面向对象原理的基础上设计和实现的,它的内核是用C++构建的. 因为使用C#语言开发,而VTK是C++ ...

最新文章

  1. C 语言——字符串和格式化输入/输出
  2. html div全屏遮罩层,Jquery全屏遮罩层DIV的实现代码
  3. 使用 Jenkins 自动部署 java-web 应用到 Docker 容器(全过程)
  4. VTK修炼之道46:图形基本操作进阶_三角网格体积、表面积、测地距离、包围盒
  5. 4,postman和newman的联合使用
  6. python tkinter Listbox用法
  7. 程序员面试金典 - 面试题 01.02. 判定是否互为字符重排(哈希map)
  8. android之修改CheckBox左侧图标样式
  9. (96)Verilog HDL:点灯设计
  10. iTOP-4412开发板-QtE4.7-UVC 摄像头使用例程
  11. asp.net页面中的Console.WriteLine结果如何查看
  12. iptables 删除规则
  13. 【shapely】自相交问题
  14. idea快速搭建ssm框架
  15. 开发板搭建简单的Web服务器
  16. Cadence Allegro导出BOM清单图文教程及视频演示
  17. Python_第六篇 第三方安装包(1)_fancyimpute介绍及使用
  18. 利用Fiddler手机抓包对ONE·APP网页爬虫实现电影资讯微信Java开发
  19. 旅游网案例:旅游线路名称查询
  20. 影育科技在上海市卢湾高级中学开展常规性元宇宙系列课程教学,上海市教委相关领导莅临现场观摩指导

热门文章

  1. Java HashMap1.7头插法扩容时出现循环链表 1.8换成尾插法
  2. n行Python代码系列:两行程序判断是否处于Debug模式
  3. docker ubuntu or centos 中 报错 pip2: command not found 为 Python 2 安装 pip2
  4. 俞敏洪语录:每一个失败的男人后面甚至不只一个女人
  5. 【Linux系统与网络编程】15:Socket文件传输1
  6. 2022-2027年中国绵羊毛行业市场全景评估及发展战略规划报告
  7. 寻找技术合伙人的创业之路
  8. 【PHP基础-9】Session机制详解及Session身份认证应用案例
  9. ES6的规范(简化版本)
  10. vray代理vrmesh转换导出成通用格式