Perspective Transform

No algorithm description given

1. Introduction Transform pictures of rectangular documents to horizontally align with the x axis.  For the photos that are taken at an angle, this algorithm adjusts the viewing angle so that the writings are perpendicular to the horizontal axis. The letters are not slanted and straight. This algorithm is very useful for OCR, performs well on receipts, business cards, printed documents. Input: (Required): Image Data API Url, Web (http/https) Url, binary image or a base64 encoded image. (Optional): Output image location. Output: Output image location. 2. Examples Example 1. Parameter 1: Data API Url {
 "image": "data://opencv/cards/sample_card.jpg"
} Output {
 "output": "data://.algo/temp/sample_card.png"
} Example 2. Parameter 1: HTTP Url {
 "image": ""
} Output: {
 "output": "data://.algo/temp/sample_card.png"
} Example 3. Parameter 1: Base64 Image {
 "image": "data:image/png;base64...."
} Output: {
 "output": "data://.algo/temp/output.png"
} Example 4. Parameter 1: HTTP Url Parameter 2: Output file save location. {
 "image": "",
 "location": "data://.algo/temp/test.png"
} Output: {
 "output": "data://.algo/temp/test.png"
} 3. Credits For more information please refer to:

(no tags)

Cost Breakdown

10 cr
royalty per call
1 cr
usage per second
avg duration

Cost Calculator

API call duration (sec)
API calls
Estimated cost
per calls
for large volume discounts
For additional details on how pricing works, see Algorithmia pricing.

Internet access

This algorithm has Internet access. This is necessary for algorithms that rely on external services, however it also implies that this algorithm is able to send your input data outside of the Algorithmia platform.

To understand more about how algorithm permissions work, see the permissions documentation.

1. Type your input

2. See the result

Running algorithm...

3. Use this algorithm

curl -X POST -d '{{input | formatInput:"curl"}}' -H 'Content-Type: application/json' -H 'Authorization: Simple YOUR_API_KEY'
View cURL Docs
algo auth
algo run algo://opencv/PerspectiveTransform/0.2.2 -d '{{input | formatInput:"cli"}}'
View CLI Docs
import (
  algorithmia ""

input := {{input | formatInput:"go"}}

var client = algorithmia.NewClient("YOUR_API_KEY", "")
algo, _ := client.Algo("algo://opencv/PerspectiveTransform/0.2.2")
resp, _ := algo.Pipe(input)
response := resp.(*algorithmia.AlgoResponse)
View Go Docs
import com.algorithmia.*;
import com.algorithmia.algo.*;

String input = "{{input | formatInput:"java"}}";
AlgorithmiaClient client = Algorithmia.client("YOUR_API_KEY");
Algorithm algo = client.algo("algo://opencv/PerspectiveTransform/0.2.2");
AlgoResponse result = algo.pipeJson(input);
View Java Docs
import com.algorithmia._
import com.algorithmia.algo._

val input = {{input | formatInput:"scala"}}
val client = Algorithmia.client("YOUR_API_KEY")
val algo = client.algo("algo://opencv/PerspectiveTransform/0.2.2")
val result = algo.pipeJson(input)
View Scala Docs
var input = {{input | formatInput:"javascript"}};
           .then(function(output) {
View Javascript Docs
using Algorithmia;

var input = "{{input | formatInput:"cs"}}";
var client = new Client("YOUR_API_KEY");
var algorithm = client.algo("algo://opencv/PerspectiveTransform/0.2.2");
var response = algorithm.pipe<object>(input);
View .NET/C# Docs
var input = {{input | formatInput:"javascript"}};
           .then(function(response) {
View NodeJS Docs
import Algorithmia

input = {{input | formatInput:"python"}}
client = Algorithmia.client('YOUR_API_KEY')
algo = client.algo('opencv/PerspectiveTransform/0.2.2')
print algo.pipe(input)
View Python Docs

input <- {{input | formatInput:"r"}}
client <- getAlgorithmiaClient("YOUR_API_KEY")
algo <- client$algo("opencv/PerspectiveTransform/0.2.2")
result <- algo$pipe(input)$result
View R Docs
require 'algorithmia'

input = {{input | formatInput:"ruby"}}
client = Algorithmia.client('YOUR_API_KEY')
algo = client.algo('opencv/PerspectiveTransform/0.2.2')
puts algo.pipe(input).result
View Ruby Docs
use algorithmia::Algorithmia;

let input = {{input | formatInput:"rust"}};
let client = Algorithmia::client("YOUR_API_KEY");
let algo = client.algo("opencv/PerspectiveTransform/0.2.2");
let response = algo.pipe(input);
View Rust Docs
import Algorithmia

let input = "{{input | formatInput:"swift"}}";
let client = Algorithmia.client(simpleKey: "YOUR_API_KEY")
let algo = client.algo(algoUri: "opencv/PerspectiveTransform/0.2.2") { resp, error in
View Swift Docs
  • {{comment.username}}