【发布时间】:2014-05-29 20:45:52
【问题描述】:
我从许多 3D 图像中提取了特征。 那么提取特征的形式(例如):
Image 1 --> 10 x 12 x 30
Image 2 --> 15 x 10 x 30
Image 3 --> 13 x 12 x 30
Image 4 --> 14 x 19 x 30
.
.
So on
其中,第一维和第二维一直在变化,但第三维不变(特征的维数)。
要进行分类,我需要用标签标记从每个图像中提取的每个特征。 为了方便起见,我必须将这些特征(来自每张图像)保持在一行中。
所以我将特征重塑为
feat_reshape= reshape(feature,[size(feature,1)*size(feature,2) size(feature,3)]);
在这种情况下,我将有 2D 特征矩阵。
但是,我仍然需要它是一维的。
我已经尝试使用“imhist”并将每行中每个图像的每个特征保留在矩阵中。但仍然没有给出好的结果。可能是因为有很多0值。
然后我尝试连接每个特征的每一列(每个图像),所以变成 1 行。但问题在于连接矩阵中列的大小不同(每行中的元素)。
例如:
Image 1 --> 10 x 12 x 30 = 3600 elements
Image 2 --> 15 x 10 x 30 = 4500 elements
任何建议,我如何存储我提取的 3D 特征,然后标记它以在 LibSVM MATLAB 中使用?
【问题讨论】:
标签: matlab matrix label libsvm