Amazon Rekognition을 사용하여 Java에서 유명인의 얼굴 인식

Amazon Web Services 웹 사이트에 명시된 바와 같이 Amazon Rekognition은 애플리케이션에 이미지 분석을 추가할 수 있는 서비스입니다. Rekognition을 사용하면 이미지에서 물체, 장면 및 얼굴을 감지할 수 있습니다.

Amazon Rekognition에서 제공하는 가장 중요한 기능은 다음과 같습니다.
  • 객체 및 장면 감지
  • 이미지 조정
  • 안면 분석
  • 얼굴 인식
  • 연예인 인식

  • 이 기술 예제에서는 서비스의 기능을 시연하기 위해 유명인의 얼굴을 인식하는 간단하고 유용한 애플리케이션을 개발하는 방법을 Java SDK를 사용하여 보여줍니다.

    우리는 Cristiano Ronaldo, Celine Dion, Sting과 같은 인지도 있는 유명인의 다양한 사진을 선택하여 인포그래픽에 표시된 대로 호의적인 결과를 얻었습니다.



    기술적인 측면에서는 가장 중요한 단계에 초점을 맞추고 덜 구체적인 부분은 생략합니다(Github에서 모든 코드를 얻을 수 있습니다). 이 예에서는 Java SDK를 사용합니다.

    단계



    1) 사용할 지역을 포함하는 AmazonRekognitionClientBuilder와 그림의 바이트 단위 표현을 포함하는 RecognizeCelebritiesRequest를 사용하여 Amazon Rekognition 클라이언트를 생성합니다.

    AmazonRekognition amazonRekognition = AmazonRekognitionClientBuilder
      .standard().withRegion(Regions.US_WEST_2).build();   
    
    RecognizeCelebritiesRequest request = new RecognizeCelebritiesRequest()
        .withImage(new Image().withBytes(imageBytes));
    



    2) 얻은 결과를 포함할 RecognizeCelebritiesResult 개체를 만듭니다.

    RecognizeCelebritiesResult result = amazonRekognition.recognizeCelebrities(request);
    



    3) 인식된 유명인 정보 표시:

    List celebs = result.getCelebrityFaces();    
    System.out.println(celebs.size() + " celebrity(s) were recognized.\n");    
    List metadata = new ArrayList();      
    
    for (Celebrity celebrity: celebs) {  
      // Name        
      System.out.println("Celebrity recognized: " + celebrity.getName());
      metadata.add("Celebrity recognized: " + celebrity.getName());
    
      // Id        
      System.out.println("Celebrity ID: " + celebrity.getId());        
      metadata.add("Celebrity ID: " + celebrity.getId());               
    
      // Extra info        
      System.out.println("Further information (if available):");       
      metadata.add("Further information (if available):"); 
    
      for (String url : celebrity.getUrls()) {           
        System.out.println(url);          
        metadata.add(url);        
      }
    }
    



    현재 Amazon Rekognition은 JPG 및 PNG 형식만 지원하므로 GIF, BMP 및 RAW와 같은 다양한 형식을 지원하는 Google Cloud Vision과 비교할 때 단점입니다.

    그러나 수행된 테스트 동안 형식 유형으로 인한 성능 문제는 없었으며 얼굴이 명확하게 보이거나 배경과의 대비가 있는 정면 각도에서 도구의 더 나은 효율성을 관찰할 수 있었습니다. 유명한.

    주목해야 할 또 다른 기능은 API가 AWS 클라이언트의 피드백을 기반으로 가능한 한 많은 유명인을 포함하도록 설계되었기 때문에 일부 분석 후 새로운 이름이 목록에 지속적으로 추가되고 있다는 것입니다. 이를 고려하여 더 넓은 문화적 스펙트럼을 기반으로 증거를 다양화하기 위해 파나마 및 콜롬비아와 같은 국가의 유명인 이미지를 사용하여 추가 테스트를 수행했습니다. 우리가 얻은 결과는 다음과 같습니다.


    처음 두 테스트에서 만족스러운 결과가 관찰되었으며 도구는 파나마 권투 전설 Roberto Durán과 잘 알려진 콜롬비아 축구 선수 James Rodriguez를 인식할 수 있었습니다. 우리는 도구의 한계를 테스트하기 위해 저해상도 이미지를 사용하여 세 번째 테스트를 수행했으며 역대 최고의 무술가인 Bruce Lee를 알아보려고 할 때 좋은 결과를 얻지 못했습니다.



    이러한 결과를 고려할 때 이미지의 품질과 해상도는 도구를 사용할 때 고려해야 할 측면임을 확인할 수 있습니다. 좋은 결과를 얻으려면 딥 러닝 모델이 공급됨에 따라 서비스가 여전히 개선되고 있는 것처럼 보이는 것을 고려하여 상당한 품질의 이미지 사용을 보장하는 것이 중요합니다.

    Amazon Rekognition은 2016년부터 시장에 출시되어 확장성, 고가용성 및 경쟁력 있는 가격과 같은 뛰어난 기능을 제공합니다. Rekognition은 Clarifai , Microsoft Cognitive ServicesGoogle’s Vision API 과 같은 경쟁 서비스와 함께 딥 러닝 알고리즘을 기반으로 하는 이미지 분석의 표준이 될 가능성이 큽니다.



    가까운 미래는 우리 사회에 유익한 영향을 미칠 수 있는 인상적인 도구를 만들기 위한 새로운 지평을 확실히 열게 될 시장인 인공 지능에 초점을 맞춘 소프트웨어 개발에 매우 ​​유망해 보입니다.

    좋은 웹페이지 즐겨찾기