【问题标题】:splitting data in one single row into multiple row in two column将单行中的数据拆分为两列中的多行
【发布时间】:2014-04-17 14:59:32
【问题描述】:

我在 MATLAB 中遇到问题,无法将我的数据拆分为 2 列中的多行。 目前我在一行中有一个来自分类的坐标点(x,y)的数据。但是我想把它们分成多行,这样每一行只有两列。

bBox = [289  1  609 1  289  17  369  145  273  161  289 161  561  241  577  241  577  257  689  257  641  273  673  273  641  321  673  321];

bBox 数据是从 boxPoint 获取的,用于创建多目标检测的边界框。

谁能帮我拆分这些数据?

我想成为这样的人:

bBOX = [289 1; 609 1; 289 17; .....];

我的部分代码如下所示:

[~, predictions] = svmclassify(P',label,model); % classifying each window

get_detect = predictions.*[predictions > 0.7];

[r,c,v]= find(get_detect);

for i = 1:r
    bBox =cell2mat(boxPoint(r));
    rectangle('Position',[bBox(1),bBox(2),64,128],'LineWidth',1, 'EdgeColor','y');
end

谢谢,

【问题讨论】:

    标签: matlab row bounding-box two-columns


    【解决方案1】:

    一种解决方案是这样写:

    % Transform bBox into a column vector
    bBox = bBox(:); 
    % Reshape n-by-1 vector bBox into two columns
    bBox = [bBox(1:2:end-1),bBox(2:2:end)]; 
    

    另一个是:

    bBox = reshape(bBox.',2,[]).'
    

    【讨论】:

    • 在最后一行,我想你的意思是reshape(bBox.',2,[]).'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多