这几天很痛苦地去学习了下用 Matlab 来处理图像,其实那些算法我觉得还不算很难理解,可是 Matlab 这种反人类的语法(可能对于我来说是这样吧,毕竟熟悉了 C++ / Java 的语法一时间很难转过来)折磨了我好久。
前些天在网上看到了一张图片:
想 po 上朋友圈,可又觉得右下角的水印被人看着好像不是很好,于是就想能否利用刚学会的一丁点儿的 Matlab 知识来把水印去掉呢?Show you my low code:
首先,读取图片:
>> I = imread('D:\课程文件\图像处理\image\beizi.jpg');
然后,目测下水印在原图中的大概位置,把它提取出来:
>> t = I(490:544, 440:600, 1:3);
imshow(t) 显示出来看看,是这样子的:
然后分别把 t 的 rgb 3 个分量都提取出来:
>> t1 = t(:, :, 1);>>figure, imshow(t1);>> t2 = t(:, :, 2);>>figure, imshow(t2);>> t3 = t(:, :, 3);>> figure, imshow(t3);
分别是这样的: