0
votes

Problem:

I'm starting to use Amazon Rekognition label detection, the problem is that I don't know how to pass a url to the DetectLabelsRequest () object. That url contains an image which is the one I need to analyze.

Code:

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        instantiateRekognition()
    }


    private fun instantiateRekognition(){
        val rekognitionClient: AmazonRekognition =
                AmazonRekognitionClient(BasicAWSCredentials("", ""))
        val sourceStream: InputStream = FileInputStream(
                "http://placehold.it/120x120&text=image1")

        var souImage: Image = Image()
        val byteBuffer = ByteBuffer.allocate(sourceStream.toString().length)
        souImage.withBytes(byteBuffer)


        val request = DetectLabelsRequest().withImage(souImage)
                .withMaxLabels(10)
                .withMinConfidence(75f)

        try {
            val result = rekognitionClient.detectLabels(request)
            val labels = result.labels
            for (label in labels) {

            }
        } catch (e: Exception) {
            e.printStackTrace()
        }

    }

}

URL of image to analyze:

http://placehold.it/120x120&text=image1