我正在开发一个应用程序,我正处于一个阶段,我正在比较两个图像,看看它们是否有任何相似之处。我设法做到了这一点,你可以找到一个例子here。
从图像中,它将为给定的两个图像显示接近相同像素的空白区域。我接下来要做的是获取白色空间的坐标并将它们绘制到original image上以突出显示有关硬币的最强特征。但是,我不确定如何做到这一点,因为我对Matlab很新。
firstImage = sprintf('M:/Project/MatLab/Coin Image Processing/Image Processing/test-1.jpg');
secondImage = sprintf('M:/Project/MatLab/Coin Image Processing/Image Processing/test-99.jpg');
a = rgb2gray(imread(firstImage));
b = rgb2gray(imread(secondImage));
axes(handles.axes4);
imshow(a==b);
title('Scanning For Strongest Features', 'fontweight', 'bold')
使用disp(a==b)
,我可以看到两张图片的哪些点是相同的。所以我的猜测是我需要做一些事情,我得到所有零的坐标,然后以突出它的方式将它们绘制到原始图像上,类似于使用黄色荧光笔,但我只是不知道如何。
答案 0 :(得分:2)
如果我收到您的问题,我认为您应该使用var password = document.getElementById('password');
password.addEventListener('blur',checkPass);
var eMsg = document.getElementById('feedback');
var minLength = 6;
function checkPass () {
if (password.value.length < minLength ) {
eMsg.innerHTML = 'Password must have' + minLength + 'characters or more';
} else if(/[!@$%&#]/.test(password.value)){
eMsg.innerHTML = 'Your password is secure';
}
}
来收集<html>
<head>
<title> Password Secured </title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1 class="logo"> logo</h1>
<br></br>
<br></br>
<p class="input">Please type your password: <br></br> <input type="text" id="password"/> <div id="feedback"></div> </p>
<br></br>
<p class="answer"></p>
<br></br>
<br></br>
<p class="tips"> <br></br>Tips tips tips </p>
</body>
的所有坐标:
find
答案 1 :(得分:1)
您可以使用透明覆盖图来绘制感兴趣的区域。
figure
imshow(originalImage); % plot the original image
hold on
% generate a red overlay
overlay(:, :, 1) = ones(size(a)); % red channel
overlay(:, :, 2) = zeros(size(a)); % green channel
overlay(:, :, 3) = zeros(size(a)); % blue channel
h = imshow(overlay); % plot the overlay
set(h, 'AlphaData', (a == b) * 0.5); % set the transparency to 50% if a == b and 0% otherwise