VC++和OpenGL开发实现,三维重建!
我的构想,但是因为对图形学不是了解很透彻,大家能否给我一些专业建议。具体怎么去做。如果有人有相似的代码那是更好了。
我现在有一个实物类似血管,通过多角度投影。获得投影图!需要根据这些投影图,重建出三维模型供旋转显示。下面是我的初步构想,大家觉得可行吗?不可行,我该怎么做?
1、在所获得的血管造影图像中应该只有血管和背景,如果将背景看成是穿过整个场的光线的话,血管就是阴影,二值化后,类似于完成了图像的分割,基本上将一些无用的信息去除了。
2、直接建立单一密度3D数据场是指这样一个概念:其实这个单一密度3D数据场就是在后面用来绘制3D图形的数据场,这个数据场应该包含所需要的所有信息,但是第一步只“建立单一密度3D数据场”,就像雕塑家雕刻一样,先取到一块雕塑的材料(如玉石、象牙、红木等等),可以认为这个材料的材质是均一的,单一密度3D数据场就是这个概念。下面要对这块材料进行艺术创作。
3、现在要通过自己的加工、镂空使这块材料成为一件艺术品,所用的工具,最原始的是各种雕刻刀,先进的有激光,在课题中,将穿过整个场的光线看成是雕刻工具对“单一密度3D数据场”进行镂空,通过多个角度的工作后,剩下的东东就是所需要的3D数据场。要注意是3D数据场,就像一个完成的雕塑作品,是一个实心的东东,而不是一个光有线条的轮廓。
4、接下来就可以将这个3D数据场可视化了。(用OpenGL)