Улучшения трёхмерных изображений
По умолчанию, трёхмерные изображения не реагируют на освещение. Значения цвета определены только заданной функцией цвета.
код на языке Wolfram Language целиком
In[3]:=
img3d = Image3D[data, "Byte", options, ImageSize -> 400]
Out[3]=
Включение объёмного освещения может помочь прояснить детали поверхности. В данном случае, добавлено направленное освещение, указывающее на плоскость экрана; также добавлена зеркальность к объекту изображения.
In[4]:=
ImageCrop[
Show[Graphics3D[Specularity[Orange, 3], Background -> Black],
Image3D[img3d, Method -> {"VolumeLighting" -> True}], options,
Lighting -> {{"Directional", White, ImageScaled[{0, 0, 2}]}},
ImageSize -> 700], {410, 410}]
Out[4]=
Зернистые изображения могут быть улучшены путём интерполяции значений.
In[5]:=
fine = ImageCrop[
Show[Graphics3D[Specularity[Orange, 3], Background -> Black],
Image3D[img3d,
Method -> {"VolumeLighting" -> True,
"InterpolateValues" -> True}], options,
Lighting -> {{"Directional", White, ImageScaled[{0, 0, 2}]}},
ImageSize -> 700], {410, 410}]
Out[5]=
Визуализируйте переход от оригинального до интерполированного и ярко освещённого изображения.
код на языке Wolfram Language целиком
In[7]:=
Animate[Overlay[{original, SetAlphaChannel[fine, i]}], {i, 0, 1},
AnimationRate -> 1/3, AnimationDirection -> ForwardBackward]