Tips & tricks for text detection from images using Google Vision API in PHP

Tips & tricks for text detection from images using Google Vision API in PHP

In this post we will give you information about Tips & tricks for text detection from images using Google Vision API in PHP. Hear we will give you detail about Tips & tricks for text detection from images using Google Vision API in PHPAnd how to use it also give you demo for it if it is necessary.

In this tutorial, I will let you know how to get content of images with Google Vision API.

Google Vision API can easily detect and extract text from an image. There are two annotation features (TEXT_DETECTION, DOCUMENT_TEXT_DETECTION) that perform Optical Character Recognition and return the extracted text, if any.

In order to use Google Vision API, you will have to create new project or select an existing project and enable the Vision API.



Example

<!DOCTYPE html>
<html>
<head>
	<title>Tips & tricks for text detection from images using Google Vision API</title>
</head>
<body>

	<form enctype="multipart/form-data" action="" method="POST">
		Choose an image to upload: <input name="image" type="file" /><br />
		<input type="submit" value="Upload Document" />
	</form>

<?php

$url="https://vision.googleapis.com/v1/images:annotate?key={api_key}";
$detection_type="TEXT_DETECTION";
$image_validation=array('image/jpeg','image/png','image/gif');

if($_FILES){

	// validate uploaded file for allowed mime type
	if(in_array($_FILES['image']['type'],$image_validation)){	    	

		// base64 encode image
    	$image=file_get_contents($_FILES['image']['tmp_name']);
		$image_base64=base64_encode($image);

		$json_request='{
			  	"requests": [
					{
					"image": {
					    "content":"'.$image_base64.'"
					  },
					  "features": [
					      {
					      	"type": "'.$detection_type.'",
					      	"maxResults": 200
					      }
					  ]
					}
				]
			}';

		$curl=curl_init();
		curl_setopt($curl, CURLOPT_URL, $url);
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-type: application/json"));
		curl_setopt($curl, CURLOPT_POST, true);
		curl_setopt($curl, CURLOPT_POSTFIELDS, $json_request);
		$json_response=curl_exec($curl);
		$status=curl_getinfo($curl, CURLINFO_HTTP_CODE);
		curl_close($curl);

		// verify if we got a correct response
		if ( $status!=200 ) {
			die("Something when wrong. Status code: $status" );
		}
		
		// create an image identifier for the uploaded file
		switch($_FILES['image']['type']){
			case'image/jpeg':
				$im= imagecreatefromjpeg($_FILES['image']['tmp_name']);
				break;
			case'image/png':
				$im= imagecreatefrompng($_FILES['image']['tmp_name']);
				break;
			case'image/gif':
				$im= imagecreatefromgif($_FILES['image']['tmp_name']);
				break;
		}

		// transform the json response to an associative array
		$response=json_decode($json_response, true);			
		// display the first text annotation
		echo'<pre>';
		print_r($response['responses'][]['textAnnotations'][]['description']);
		echo'</pre>';
	
    }
    else{
    	echo'File type not allowed';
    }

	}
?>

</body>
</html>

We are using cURL request to detect text from uploaded image using Google Vision API because everything is encapsulated in a RESTful API.

Label :

PHP

File

Google API

HTML

How To

Web Development

Hope this code and post will helped you for implement Tips & tricks for text detection from images using Google Vision API in PHP. if you need any help or any feedback give it in comment section or you have good idea about this post you can give it comment section. Your comment will help us for help you more and improve us. we will give you this type of more interesting post in featured also so, For more interesting post and code Keep reading our blogs

For More Info See :: laravel And github

Leave a Comment

Your email address will not be published. Required fields are marked *

14  +    =  22

We're accepting well-written guest posts and this is a great opportunity to collaborate : Contact US