How to remove white border from image?

8 次查看(过去 30 天)
% This draws a small transparent white square in upper left hand side of the group image.
% How do I remove white border of the gcf, and preserve original dimensions of E at 72ppi in saved file?
% BORDER TIGHT seems to have no effect.
clear all
E = imread('visionteam.jpg');
hold on
h1 = imshow(E,'Border','tight')
I = 255 - uint8(zeros(100, 100, 3));
h2 = imshow(I,'Border','tight')
set(h2, 'AlphaData', .35)
hold off
print(gcf,'im','-dtiff','-r72');

采纳的回答

Image Analyst
Image Analyst 2020-7-25
Try this:
rgbImage = imread('visionteam.jpg');
hold on
imshow(rgbImage,'Border','tight')
whiteSquare = 255 * ones(100, 100, 'uint8');
rgbImage(1:100, 1:100, 1) = whiteSquare; % Load into red channel.
rgbImage(1:100, 1:100, 2) = whiteSquare; % Load into red channel.
rgbImage(1:100, 1:100, 3) = whiteSquare; % Load into red channel.
imshow(rgbImage)
% imwrite(rgbImage, filename); % Save to disk if you want.
  1 个评论
mark palmer
mark palmer 2020-7-25
编辑:mark palmer 2020-7-25
Thanks! The border is gone, but I need the white square to be transparent.
EDIT:: I think I got it, thanks again.
rgbImage(1:100, 1:100, :) = imadd(rgbImage(1:100, 1:100, :)*.75,whiteSquare*.25);

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Processing and Computer Vision 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by