Mentions légales du service

Skip to content
Snippets Groups Projects
Commit c0c8e5ca authored by DIB Elian's avatar DIB Elian
Browse files

Fix for degenerate case k=1

parent 415d5444
No related branches found
No related tags found
No related merge requests found
......@@ -4,7 +4,7 @@ function Ref = multiply(Ref,C,method,varargin)
[Offset,Color,Label] = SR.SetToFields(Ref);
Size = cellfun(@size,Color,'UniformOutput',false);
[ImgSize,ImgRes] = cellfun(@(x) deal(x(1:3),x(4:end)),Size,'UniformOutput',false);
[ImgSize,ImgRes] = deal(cell(size(Color)));
RefSize = size(Ref);
numLab = numel(Label);
......@@ -25,6 +25,10 @@ else
end
for lab = 1:numLab
Size{lab}(end+1:5) = 1;
ImgSize{lab} = Size{lab}(1:3);
ImgRes {lab} = Size{lab}(4:end);
Color{lab} = reshape(Color{lab},prod(ImgSize{lab}),prod(ImgRes{lab}));
Label{lab} = reshape(Label{lab},prod(ImgSize{lab}),prod(ImgRes{lab}));
end
......
......@@ -7,22 +7,26 @@ function C = project(Ref,Rec,method)
[~,ColorRef,LabelRef] = SR.SetToFields(Ref);
[~,ColorRec,LabelRec] = SR.SetToFields(Rec);
SizeRef = cellfun(@size,ColorRef,'UniformOutput',false);
[ImgSizeRef,ImgResRef] = cellfun(@(x) deal(x(1:3),x(4:end)),SizeRef,'UniformOutput',false);
SizeRec = cellfun(@size,ColorRec,'UniformOutput',false);
[ImgSizeRec,ImgResRec] = cellfun(@(x) deal(x(1:3),x(4:end)),SizeRec,'UniformOutput',false);
Size = size(Ref);
numLab = numel(LabelRef);
for lab = 1:numLab
ColorRef{lab} = reshape(ColorRef{lab},prod(ImgSizeRef{lab}),prod(ImgResRef{lab}));
LabelRef{lab} = reshape(LabelRef{lab},prod(ImgSizeRef{lab}),prod(ImgResRef{lab}));
SizeRef = size(ColorRef{lab});
SizeRef(end+1:5) = 1;
ImgSizeRef = SizeRef(1:3);
ImgResRef = SizeRef(4:end);
ColorRef{lab} = reshape(ColorRef{lab},prod(ImgSizeRef),prod(ImgResRef));
LabelRef{lab} = reshape(LabelRef{lab},prod(ImgSizeRef),prod(ImgResRef));
ColorRef{lab}(~( LabelRef{lab}==lab)) = 0;
ColorRec{lab} = reshape(ColorRec{lab},prod(ImgSizeRec{lab}),prod(ImgResRec{lab}));
LabelRec{lab} = reshape(LabelRec{lab},prod(ImgSizeRec{lab}),prod(ImgResRec{lab}));
SizeRec = size(ColorRec{lab});
SizeRec(end+1:5) = 1;
ImgSizeRec = SizeRec(1:3);
ImgResRec = SizeRec(4:end);
ColorRec{lab} = reshape(ColorRec{lab},prod(ImgSizeRec),prod(ImgResRec));
LabelRec{lab} = reshape(LabelRec{lab},prod(ImgSizeRec),prod(ImgResRec));
ColorRec{lab}(~(LabelRec{lab}==lab)) = 0;
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment