1

Image Enhancement with Power Law Transformation

Unsolved
Computer Vision

Difficulty: 6 | Problem written by mesakarghm
Problem reported in interviews at

Apple
Facebook
Google
Netflix

In digital image processing, the Power Law transformation is used for enhancing images for different displays.

The Power Law Transformation can be written as: 

\(S = Cr^y\)

where C is a positive constant, r is the input pixel value and y is the gamma value. 

Write a function power_law_transformation(image,C,gamma) which takes in an input grayscale image, performs a power law transformation over, it and returns the resultant transformed image. 

 

Sample Input:
<class 'numpy.ndarray'>
image: [[ 1 7 119 13 12] [ 11 21 61 81 91] [ 5 66 6 5 5] [ 5 66 166 145 155] [ 5 66 136 145 155]]
<class 'int'>
C: 1
<class 'int'>
gamma: 1

Expected Output:
<class 'numpy.ndarray'>
[[ 1 7 119 13 12] [ 11 21 61 81 91] [ 5 66 6 5 5] [ 5 66 166 145 155] [ 5 66 136 145 155]]

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Cupiditate ipsa enim laborum consequatur, cumque excepturi doloremque quo, numquam autem sequi, ipsum id quam cupiditate aliquam obcaecati, adipisci placeat ipsum eaque delectus laborum nesciunt dicta architecto. Quis quidem repellat explicabo totam, doloribus dignissimos nisi eos temporibus, quia quae fugiat reiciendis dolorum architecto accusantium, voluptatem ex culpa eaque sapiente quae? Eligendi optio quod ex quas quam molestiae pariatur inventore cupiditate labore illum, recusandae expedita tempore accusantium ut similique quidem quibusdam dolore a nostrum, error possimus id omnis magnam tenetur provident, est quo laborum et dignissimos cum deleniti quae? Laboriosam cupiditate recusandae officia nihil corrupti asperiores facere, rem tempora est cupiditate soluta ex deserunt, fugit nulla voluptatibus dicta, perferendis reprehenderit esse dolor nostrum.

Quos ratione quibusdam, aliquid labore mollitia quaerat itaque perferendis, assumenda voluptate quam quo ipsa esse, impedit nihil et ullam veniam labore aliquid natus, quas ad odit voluptatem ipsa distinctio hic? Neque veniam dolorum, autem beatae ad dolorum ducimus?

Totam error veritatis at, nulla tenetur nisi enim, facere quibusdam odio nihil ex quasi magni distinctio cumque ratione, est perspiciatis consequatur cupiditate quia doloremque, temporibus voluptatem reiciendis laudantium ea. Enim similique rerum nihil ratione quas repudiandae dolores molestiae. Tenetur ad facilis vel earum dolorum cumque voluptas ab officiis quaerat, nemo beatae adipisci omnis quas eius quidem iure id libero natus quibusdam, labore harum voluptas temporibus, sequi odio quidem doloribus tempore hic debitis laudantium eum deserunt, sit sequi quis? Odio repudiandae dolorem maiores aspernatur debitis est tempore sint illo amet cum, corrupti saepe animi dolor voluptatibus aut tempore, eos est error qui corrupti.

This is a premium feature.
To access this and other such features, click on upgrade below.

Ready.

Input Test Case

Please enter only one test case at a time
numpy has been already imported as np (import numpy as np)