Normalise an image
Normalise transformation allows users to improve the visual contrast by expanding the brightness to encompass the whole dynamic range.
It scales the brightness values of the active layer so that the darkest point becomes black and the brightest point becomes as bright as possible, without altering its hue. This is often a “magic fix” for images that are dim or washed out.
In most circumstances, there is no noticeable change in the transformed image.
- Normalised
- Original
- URL
- React
- JavaScript
- Node.js
- Python
- Golang
- Kotlin
- C#
- PHP
<PixelBinImage url="https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg" />
import Pixelbin from "@pixelbin/core";
const obj = {
cloudName: "dummy-cloudname",
zone: "FIDrmb",
version: "v2",
transformations: [{"name":"normalise","plugin":"t"}],
filePath: "images/transformation/lady.jpeg",
baseUrl: "https://cdn.pixelbin.io",
};
const url = Pixelbin.default.utils.objToUrl(obj);
console.log(url);
// url
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg
const { url } = require("@pixelbin/admin");
const obj = {
cloudName: "dummy-cloudname",
zone: "FIDrmb",
version: "v2",
transformations: [{"name":"normalise","plugin":"t"}],
filePath: "images/transformation/lady.jpeg",
baseUrl: "https://cdn.pixelbin.io",
};
const cdnUrl = url.objToUrl(obj);
console.log(cdnUrl);
// cdnUrl
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg
from pixelbin.utils.url import obj_to_url
obj = {
"cloudName": "dummy-cloudname",
"zone": "FIDrmb",
"version": "v2",
"transformations": [{"name":"normalise","plugin":"t"}],
"filePath": "images/transformation/lady.jpeg",
"baseUrl": "https://cdn.pixelbin.io",
}
url = obj_to_url(obj)
print(url)
# url
# https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg
package main
import (
"fmt"
"github.com/pixelbin-dev/pixelbin-go/v2/sdk/utils/url"
)
func main() {
obj := map[string]interface{}{
"cloudName": "dummy-cloudname",
"zoneSlug": "FIDrmb",
"version": "v2",
"transformations": []map[string]interface{}{
{"plugin": "t", "name": "normalise"},
},
"filePath": "images/transformation/lady.jpeg",
"baseUrl": "https://cdn.pixelbin.io",
"options": map[string]interface{}{},
}
urlstring, err := url.ObjToUrl(obj)
if err != nil {
fmt.Println(err)
}
fmt.Println(urlstring)
}
// urlstring
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg
import com.pixelbin.url.UrlObj
import com.pixelbin.Utils
import com.pixelbin.transformation.TransformationObj
fun main(){
val obj = UrlObj(
cloudName = "dummy-cloudname",
zone = "FIDrmb",
version = "v2",
transformation = arrayListOf(
TransformationObj( plugin = "t", name = "normalise", )
),
filePath = "images/transformation/lady.jpeg",
baseUrl = "https://cdn.pixelbin.io"
)
val url = Utils.objToUrl(obj)
println(url)
// url
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg
}
using System;
using System.Collections.Generic;
using System.IO;
using Pixelbin.Utils;
namespace ExampleNamespace
{
class ExampleClass
{
static void Main(string[] args)
{
UrlObj obj = new UrlObj(
version: "v2",
cloudName: "dummy-cloudname",
filePath: "images/transformation/lady.jpeg",
zone: "FIDrmb",
baseUrl: "https://cdn.pixelbin.io",
transformations: new List<UrlTransformation>() {
new UrlTransformation(plugin: "t", name: "normalise", )
}
);
string url = Url.ObjToUrl(obj);
Console.WriteLine(url);
// returned url string
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg
}
}
}
<?php
require 'vendor/autoload.php';
use Pixelbin\Utils\Url;
$obj = [
"cloudName" => "dummy-cloudname",
"zone" => "FIDrmb",
"version" => "v2",
"options" => [],
"transformations" => [
["plugin" => "t", "name" => "normalise", ],
],
"filePath" => "images/transformation/lady.jpeg",
"baseUrl" => "https://cdn.pixelbin.io",
];
$url = Url::obj_to_url($obj);
print($url);
// url
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/t.normalise()/images/transformation/lady.jpeg
?>
- URL
- React
- JavaScript
- Node.js
- Python
- Golang
- Kotlin
- C#
- PHP
<PixelBinImage url="https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg" />
import Pixelbin from "@pixelbin/core";
const obj = {
cloudName: "dummy-cloudname",
zone: "FIDrmb",
version: "v2",
transformations: [],
filePath: "images/transformation/lady.jpeg",
baseUrl: "https://cdn.pixelbin.io",
};
const url = Pixelbin.default.utils.objToUrl(obj);
console.log(url);
// url
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg
const { url } = require("@pixelbin/admin");
const obj = {
cloudName: "dummy-cloudname",
zone: "FIDrmb",
version: "v2",
transformations: [],
filePath: "images/transformation/lady.jpeg",
baseUrl: "https://cdn.pixelbin.io",
};
const cdnUrl = url.objToUrl(obj);
console.log(cdnUrl);
// cdnUrl
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg
from pixelbin.utils.url import obj_to_url
obj = {
"cloudName": "dummy-cloudname",
"zone": "FIDrmb",
"version": "v2",
"transformations": [],
"filePath": "images/transformation/lady.jpeg",
"baseUrl": "https://cdn.pixelbin.io",
}
url = obj_to_url(obj)
print(url)
# url
# https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg
package main
import (
"fmt"
"github.com/pixelbin-dev/pixelbin-go/v2/sdk/utils/url"
)
func main() {
obj := map[string]interface{}{
"cloudName": "dummy-cloudname",
"zoneSlug": "FIDrmb",
"version": "v2",
"transformations": []map[string]interface{}{
},
"filePath": "images/transformation/lady.jpeg",
"baseUrl": "https://cdn.pixelbin.io",
"options": map[string]interface{}{},
}
urlstring, err := url.ObjToUrl(obj)
if err != nil {
fmt.Println(err)
}
fmt.Println(urlstring)
}
// urlstring
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg
import com.pixelbin.url.UrlObj
import com.pixelbin.Utils
import com.pixelbin.transformation.TransformationObj
fun main(){
val obj = UrlObj(
cloudName = "dummy-cloudname",
zone = "FIDrmb",
version = "v2",
transformation = arrayListOf(
),
filePath = "images/transformation/lady.jpeg",
baseUrl = "https://cdn.pixelbin.io"
)
val url = Utils.objToUrl(obj)
println(url)
// url
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg
}
using System;
using System.Collections.Generic;
using System.IO;
using Pixelbin.Utils;
namespace ExampleNamespace
{
class ExampleClass
{
static void Main(string[] args)
{
UrlObj obj = new UrlObj(
version: "v2",
cloudName: "dummy-cloudname",
filePath: "images/transformation/lady.jpeg",
zone: "FIDrmb",
baseUrl: "https://cdn.pixelbin.io",
transformations: new List<UrlTransformation>() {
}
);
string url = Url.ObjToUrl(obj);
Console.WriteLine(url);
// returned url string
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg
}
}
}
<?php
require 'vendor/autoload.php';
use Pixelbin\Utils\Url;
$obj = [
"cloudName" => "dummy-cloudname",
"zone" => "FIDrmb",
"version" => "v2",
"options" => [],
"transformations" => [
],
"filePath" => "images/transformation/lady.jpeg",
"baseUrl" => "https://cdn.pixelbin.io",
];
$url = Url::obj_to_url($obj);
print($url);
// url
// https://cdn.pixelbin.io/v2/dummy-cloudname/FIDrmb/original/images/transformation/lady.jpeg
?>
The histograms after normalisation contain noticeable variations, as you can see in the image above. These give the pictures a good contrast without drastically changing the way they looked before.
The four histograms are combined into one in the depictions below, which only show their outline. This offers more concrete visual proof of the same.