Google\Cloud\Vision\Image::requestObject PHP Method

requestObject() public method

This method is used internally by {@see \Google\Cloud\Vision\VisionClient} and is not generally intended for use outside of that context. Example: use Google\Cloud\Vision\Image; $imageResource = fopen(__DIR__ .'/assets/family-photo.jpg', 'r'); $image = new Image($imageResource, [ 'FACE_DETECTION' ]); $requestObj = $image->requestObject();
See also: https://cloud.google.com/vision/reference/rest/v1/images/annotate#annotateimagerequest AnnotateImageRequest
public requestObject ( boolean $encode = true ) : array
$encode boolean [optional] If set to true, image bytes will be base64-encoded (required for json/rest requests)
return array
    public function requestObject($encode = true)
    {
        return array_filter(['image' => $this->imageObject($encode), 'features' => $this->features, 'imageContext' => $this->options['imageContext']]);
    }

Usage Example

 public function testBytesWithoutEncoding()
 {
     $bytes = 'foo';
     $image = new Image($bytes, ['landmarks']);
     $res = $image->requestObject(false);
     $this->assertEquals($res['image']['content'], $bytes);
     $encodedRes = $image->requestObject();
     $this->assertEquals($encodedRes['image']['content'], base64_encode($bytes));
 }