Error While Saving the Raw data into Binary Image.
2 views (last 30 days)
Show older comments
Hello Everyone, I hope you are doing well. I have the code which make the data into Image format.
But the main issue with this code is that, When the same values of data comes it gives the error here is the error.
As i attached the 2 dataset below. The code works fine on dataset2.mat
While when we run it into dataset1.mat it gives the error.
Error using matlab.internal.math.interp1
Sample points must be unique.
Error in interp1 (line 188)
VqLite = matlab.internal.math.interp1(X,V,method,method,Xqcol);
The following is the code which i used
[numImages, lenImage] = size(Dataset1000);
% ImageSize
for imNum = 1:numImages
imData = Dataset1000(imNum,:); % get pattern
dataset=imData;
x=1:numel(dataset);%this is what you did implictly
y=dataset;
resolution=1000;
X=linspace(min(x), max(x) ,resolution);
Y=linspace(min(y), max(y) ,resolution);
% determine index in X of each x, likewise for y (note that the coordinates
% are flipped for the y-direction in images).
ind_x=interp1(X, 1:numel(X) ,x,'nearest');
ind_y=interp1(Y,numel(Y):-1:1,y,'nearest');
%compute linear index
ind=sub2ind([resolution resolution],ind_y,ind_x);
% create the image
IM=zeros(resolution,resolution);
IM(ind)=1;
% Since you apparently want a dilation, apply it before displaying the
% image.
SE=strel('disk',2);
im=imdilate(IM,SE);
end
0 Comments
Answers (1)
Walter Roberson
on 17 Oct 2022
We talked to you about this already. Your min x and max x are the same so your linspace is all the same value.
There is no way to rescue the situation with a small code tweak. You need to go back and rethink what you are doing.
Have you considered using improfile()? It automatically switches between interpolation over x or over y to get the best results.
8 Comments
Walter Roberson
on 18 Oct 2022
Computer Vision has insertShape and insertText. Between the two they can create any line graph (surfaces are harder)
See Also
Categories
Find more on Mathematics and Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!