MatchImagesFeatures в appium не работаетJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 MatchImagesFeatures в appium не работает

Сообщение Anonymous »

Я пытаюсь использовать метод matchImageFeatures в своей платформе Appium, но не могу заставить его работать должным образом. Пожалуйста, найдите мою конфигурацию ниже, и если кто-нибудь сможет помочь мне решить эту проблему, я буду очень признателен.
config :
  • Версия клиента Appium: 9.3.0
  • Версия сервера Appium: 2.12.1
  • Версия плагина изображений: images@3.0.21
    Версия jdk: jdk-21.0.5.11-openj9
вот мой код:

Код: Выделить всё

public boolean isImagePresent(String baseImagePath, String secondImagePath) {
try {
// Load the base image as a byte array
byte[] baseImage = Files.readAllBytes(Paths.get(baseImagePath));
byte[] secondImage = Files.readAllBytes(Paths.get(secondImagePath));

// Generate diff image path automatically based on baseline image path
String diffImagePath = baseImagePath.replace(".png", "_present_diff.png");

// Perform feature-based image comparison
FeaturesMatchingResult result = driver.matchImagesFeatures(
baseImage ,
secondImage,
new FeaturesMatchingOptions()
.withDetectorName(FeatureDetector.ORB)    // Use SIFT detector
.withGoodMatchesFactor(40)             // Adjust match threshold
.withMatchFunc(MatchingFunction.BRUTE_FORCE_HAMMING)  // Matching function
.withEnabledVisualization()                // Enable visualization
);

System.out.println("result : " + result);

// Assertions
if (result.getCount() > 0) {
Files.write(Paths.get(diffImagePath), result.getVisualization());
System.out.println("Visualization saved at: " + diffImagePath);
System.out.println("Match found! Good matches: " + result.getCount());
return true;
} else {
System.out.println("No match found.");
return false;
}

}catch (Exception e) {
e.printStackTrace();
return false; // Return false if an exception occurs
}
}
вот что я получил в консоли:

Код: Выделить всё

result : io.appium.java_client.imagecomparison.FeaturesMatchingResult@87dfcecc
No match found.
Я ожидаю получить визуализацию, как показано ниже:
Пример визуализации
Я уже использовал другие методы, такие как «findImageOccurrence» и «getImagesSimilarity», работают правильно, но метод «matchImagesFeatures» у меня не работает.
Я специально хочу использовать «matchImagesFeatures», потому что он более гибкий и может масштабировать и вращать изображения.

Подробнее здесь: https://stackoverflow.com/questions/792 ... oesnt-work
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»