Error using lazysnapping,Expected input number 3, foreground, to be integer-valued.
조회 수: 11 (최근 30일)
이전 댓글 표시
Why is there a problem with the third input parameter of "lazysnapping"? I think it is an integer value.
RGB = imread('peppers.png');
L = superpixels(RGB,500); % 分块,主要是加速图像处理
[h,w,c] = size(RGB);
% figure
% BW = boundarymask(L);
% imshow(imoverlay(RGB,BW,'cyan'),'InitialMagnification',67)
figure
imshow(RGB)
h1 = drawpolyline('Color','green'); % 代表前景
roiPoints1 = h1.Position;
h2 = drawpolyline('Color','blue');%代表背景
roiPoints2 = h2.Position;
foregroundInd = sub2ind([h,w],roiPoints1(:,2),roiPoints1(:,1));
backgroundInd = sub2ind([h,w],roiPoints2(:,2),roiPoints2(:,1));
% roi = zeros(size(RGB,1),size(RGB,2),'uint8');
% roi(roiPoints1(:,2),roiPoints1(:,1)) = 255;
BW = lazysnapping(RGB,L,foregroundInd,backgroundInd);
% BW = grabcut(RGB,L,roi);
figure
imshow(BW)
maskedImage = RGB;
maskedImage(repmat(~BW,[1 1 3])) = 0;
figure;
imshow(maskedImage)
Error using lazysnapping
Expected input number 3, foreground, to be integer-valued.
Error in lazysnapping>validateInputs (line 248)
validateattributes(foreground,validMaskTypes,{'nonnan','nonsparse', ...
Error in lazysnapping (line 158)
[foregroundInd,backgroundInd,is3D] = validateInputs(A,L,foreground,background);
Error in faceCropID (line 20)
BW = lazysnapping(RGB,L,foregroundInd,backgroundInd);
댓글 수: 0
채택된 답변
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Statistics and Machine Learning Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!