首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用~=矩阵时出错,尺寸必须一致

使用~=矩阵时出错,尺寸必须一致
EN

Stack Overflow用户
提问于 2021-10-21 03:07:43
回答 1查看 84关注 0票数 0

我使用下面的代码“基于计算机断层扫描的上颌窦标准化测量工具”来测量DCOM图像中的上颌窦的体积:

代码语言:javascript
复制
% Read images
clear all
close all

[filename, pathname] = uigetfile('*','Select CT exam (all slices)','MultiSelect','on');
num= length(filename);
bbbb=1;


step=input('Step of image reading: \')


for aaaa = 1:step:num
    xinfo=dicominfo([pathname,char(filename(aaaa))]);
    pxsp=cat(2,xinfo.PixelSpacing);
    x=dicomread([pathname,char(filename(aaaa))])+cat(2,xinfo.RescaleIntercept);
    k=x;
    k = im2bw(k,0.49);
    k = imfill(k,'holes');
    cc = bwconncomp(k);
    stats = regionprops(cc,'Area');
    A = [stats.Area];
    [~,biggest] = max(A);
    k(labelmatrix(cc)~=biggest) = 0;
    x(k~=1)=-2000;     
    masccranio(:,:,bbbb)=k;
    cranio(:,:,bbbb)=x;
    cranio_full(:,:,bbbb)=x;
    bbbb=bbbb+1;
    end

一开始,我们对开始时输入的阅读步骤一无所知,如果可以的话,请帮助我们。我们的第二个问题是,当我们运行代码时,我们得到以下错误:

代码语言:javascript
复制
Error using  ~= 
Matrix dimensions must agree.

Error in Quant (line 32)
    k(labelmatrix(cc)~=biggest) = 0;

我使用的是Matlab2019b,据我所知,这段代码适用于2013年。任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2021-10-23 12:57:25

我希望biggest表示此行中所有区域区域中的最大值:

代码语言:javascript
复制
k(labelmatrix(cc)~=biggest) = 0;

在这种情况下,您的问题很可能是A不是向量,因此biggest不是标量。这会导致操作失败,因为~=运算符仅适用于大小相同或具有标量的矩阵。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69655382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档