color map based on area

A 3D volume is constructed from a stack of 2D masks (slices). How to color each slice based on the area of the object inside. Suppose the volume is a trunk.

2 件のコメント

Walter Roberson
Walter Roberson 2018 年 7 月 25 日
Do you want all the pixels selected by the mask of a slice to be the same color? Or do you want to shade by value, different brightness of the color according to pixel value?
Yazan
Yazan 2018 年 7 月 25 日
I have the volume as 3D matrix (n by n by 500) and the area as a separate 1 by 500 vector.

サインインしてコメントする。

回答 (2 件)

Yazan
Yazan 2018 年 7 月 25 日

0 投票

Thanks Walter for your comment. All pixels should have the same color based on the area of the mask at that slice. The maximum area is 12 unit square and the minimum is 4 unit square and the volume (or isosurface) was constructed from 500 slices.
Walter Roberson
Walter Roberson 2018 年 7 月 25 日

0 投票

colorval = repmat( sum( sum( masks3d, 1), 2) ), size(masks3d, 1), size(masks3d, 2), 1 ) .* masks3d;
vol3d('CData', colorval', 'alpha', double(masks3d))

カテゴリ

タグ

質問済み:

2018 年 7 月 25 日

回答済み:

2018 年 7 月 25 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by