隨着Sikuli,您可以檢查圖像的內部另一個的存在。 在此示例代碼中,圖片是從文件加載的。 這段代碼告訴我們第二張照片是否是第一張照片的一部分。
public static void main(String[] argv){
String img1Path = "/test/img1.png";
String img2Path = "/test/img2.png";
if (findPictureRegion(img1Path, img2Path) == null)
System.out.println("Picture 2 was not found in picture 1");
else
System.out.println("Picture 2 is in picture 1");
}
public static ScreenRegion findPictureRegion(String refPictureName, String targetPictureName2){
Target target = new ImageTarget(new File(targetPictureName2));
target.setMinScore(0.5); // Precision of recognization from 0 to 1.
BufferedImage refPicture = loadPicture(refPictureName);
ScreenRegion screenRegion = new StaticImageScreenRegion(refPicture);
return screenRegion.find(target);
}
public static BufferedImage loadPicture(String pictureFullPath){
try {
return ImageIO.read(new File(pictureFullPath));
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
要使用Sikuli包,我說這種依賴與Maven:
<!-- SIKULI libraries -->
<dependency>
<groupId>org.sikuli</groupId>
<artifactId>sikuli-api</artifactId>
<version>1.1.0</version>
</dependency>
你要檢查是否有另一個圖像中存在的圖像?您可以自己編寫代碼,無需使用任何外部軟件包。除非兩幅圖像的圖像質量不同,否則會更困難。 – user3437460
是的,我想在更大的圖像中找到圖像的座標。最終目標是在不同尺寸/分辨率的匹配上具有靈活性。 –
卡洛請看下面的答案。 – user3437460