Undefined function 'immse' for input arguments of type 'uint8'.

6 views (last 30 days)
im1=imread('stallite1.JPG'); figure subplot(1,3,1),imshow(im1),title('original image') ref=rgb2gray(im1); subplot(1,3,2),imshow(ref),title('gray image')
N = imnoise(ref,'salt & pepper', 0.02); subplot(1,3,3),imshow(N),title('noise image') error = immse(N, ref); fprintf('\n The mean-squared error is %0.4f\n', error)

Accepted Answer

Guillaume
Guillaume on 24 Apr 2018
immse was introduced in version R2014b and requires the image processing toolbox. If you're on an earlier version or don't have the image processing toolbox, you'll get the error you see.
Since imnoise does not error we can conclude that you're using a version before R2014b.
  4 Comments
raghda aljaff
raghda aljaff on 24 Apr 2018
The upgrade the matlab to R2014b is free or i should pay for that? thanks
Guillaume
Guillaume on 24 Apr 2018

If you're on a software maintenance service then the upgrade (to any version) is free. Otherwise, yes you will have to pay. You're better off contacting mathworks directly with your license number. They'll be able to tell you directly if it's free and if not, how much.

Sign in to comment.

More Answers (1)

raghda aljaff
raghda aljaff on 25 Apr 2018
I used the code above exactly and I convert the image 2 double but unfortunately is still the error message (undefined function ‘immse’ for input arguments of type ‘uint8’ ,thanks for help me

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Products


Release

R2013a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!