To remove noise from image you can try different noise removal functions in MATLAB.
You can find filtering functions here : https://www.mathworks.com/help/images/noise-removal.html
You can also try Bilateral Filtering if above functions fails to give desired results. Find its implementation here: https://www.mathworks.com/matlabcentral/fileexchange/12191-bilateral-filtering
You can consider extracting curvature of the image using bwboundaries, you can find code for the same here : https://www.mathworks.com/matlabcentral/answers/164349-how-to-calculate-the-curvature-of-a-boundaries-in-binary-images
I have tried the same code for your image, and I have attached the result after passing your image as an input. 

Hope this helps!

