deeplearning

deeplearning / ColorfulImageColorization / 1.1.13

README.md

1. Introduction

Colorful Image Colorization is an algorithm that takes in a black & white photos and returns the colorized version of it. The algorithm uses deep learning to classify objects/regions within the image and color them accordingly.

Note: we've recently added batchable IO to this algorithm for interfacing with VideoTransform and other batch image processing work.

Note: When using batched images and the default 5 minute timeout, a safe maximum batch size is 20.

Input:

  • (Required) Image Data API Url, Web (http/https) Url, binary image,base64 encoded image or an array of data API URLs / web URLs.
  • (Optional) Output image location, if input is an array, output location should be an array of equal size.

Output:

  • Output image location.

Note: The first call to this algorithm will take a bit longer than sequential calls to due algorithm initialization. All following calls will be significantly faster.

2. Examples

Example 1.

  • Parameter 1: Data API Url
{
    "image": "data://deeplearning/example_data/lincoln.jpg"
}

Output:

{
  "output": "data://.algo/deeplearning/ColorfulImageColorization/temp/lincoln.png"
}

Example 2.

  • Parameter 1: HTTPS Url
{
    "image": "https://s3.amazonaws.com/algorithmia-assets/algo_desc_images/deeplearning_ColorfulImageColorization/lincoln.jpg"
}

Output:

{
  "output": "data://.algo/deeplearning/ColorfulImageColorization/temp/lincoln.png"
}

Example 3.

  • Parameter 1: Base64 image
{
    "image": "data:image/png;base64....",
}

Output;

{
  "output": "data://.algo/deeplearning/ColorfulImageColorization/temp/output.png"
}

Example 4.

  • Parameter 1: HTTPS Url
  • Parameter 2: Output file save location.
{
  "image": "data://deeplearning/example_data/lincoln.jpg",
  "location": "data://.algo/temp/test42.png"
}

Output:

{
  "output": "data://.algo/deeplearning/ColorfulImageColorization/temp/test42.png"
}

Example 5.

  • Parameter 1: An array of HTTPS Urls
{  
   "image":[  
      "data://deeplearning/Temp/sample_image_1.png",
      "data://deeplearning/Temp/sample_image_2.png",
      "data://deeplearning/Temp/sample_image_3.png"
   ]
}

Output:

{
  "output": [
    "data://.algo/deeplearning/ColorfulImageColorization/temp/f8ca262c-a728-4866-9215-1e1684a4b83f.png",
    "data://.algo/deeplearning/ColorfulImageColorization/temp/fc523e24-7db4-4f36-801d-2fbb33af6f95.png",
    "data://.algo/deeplearning/ColorfulImageColorization/temp/61e1a08f-6527-4d1a-b61e-299386950ede.png"
  ]
}

Example 6.

  • Parameter 1: An array of Data API Uris
  • Parameter 2: An array of file save paths (Data API URL's) must be the same length as parameter 1
{  
   "image":[  
      "data://deeplearning/Temp/sample_image_1.png",
      "data://deeplearning/Temp/sample_image_2.png",
      "data://deeplearning/Temp/sample_image_3.png"
   ],
   "location":[  
      "data://.algo/temp/sample_output_1.png",
      "data://.algo/temp/sample_output_2.png",
      "data://.algo/temp/sample_output_3.png"
   ]
}

Output:

{  
   "output":[  
      "data://.algo/deeplearning/ColorfulImageColorization/temp/sample_output_1.png",
      "data://.algo/deeplearning/ColorfulImageColorization/temp/sample_output_2.png",
      "data://.algo/deeplearning/ColorfulImageColorization/temp/sample_output_3.png"
   ]
}

3. Credits

For more information, please refer to http://richzhang.github.io/colorization/ or Zhang, Richard and Isola, Phillip and Efros, Alexei A (2016). Colorful Image Colorization. arXiv preprint arXiv:1603.08511.

Demo image were retrieved from Wikipedia under Public domain:https://en.wikipedia.org/wiki/Abraham_Lincoln#/media/File:A%26TLincoln.jpg