Java Image Transformation Function Development
Budget: $10 – $30 CAD
I'm looking for a Java function to perform specific image transformations. The function should transform an image with a specified set of transformations and optionally apply a background.
The function signature should be:
public BufferedImage transformImage(BufferedImage image, BufferedImage background)
The transformations to be applied are:
- RandomPerspective with a distortion scale of 0.2 and a probability of 0.8
- ColorJitter with slight variations in brightness, contrast, hue, and saturation
- GaussianBlur with a kernel size of (7, 7) and a sigma between 0.1 and 3
- RandomRotation applied with a 30% probability
( transforms = v2.Compose([
v2.RandomPerspective(distortion_scale=0.2, p=.8),
v2.ColorJitter(brightness=.1, contrast=.1, hue=.1, saturation=0.1),
v2.GaussianBlur(kernel_size=(7, 7), sigma=(0.1, 3.)),
v2.RandomApply([v2.RandomRotation(degrees=(90,90), expand=True)], p=0.3)
])
The images to be processed will be sourced from local files and the function should only need to support a single image format. While speed is important, it is not critical. The implementation can use any image processing package, OpenCV or JAI, although I have no preference.
Ideal skills for the job include:
- Proficiency in Java
- Experience with image processing
- Familiarity with OpenCV or JAI
- Ability to write efficient and clean code.
Attached are an example of the image.
brb-1-abyssal-specter.png is the given image.
pexels-bri-schneiter-28802-346529.jpg is the background
final.jpg is the result.
Output image has to have the same aspect ratio as the input image but the size can be a bit bigger. The background will have to be cropped.
I tried with Gemini and I wrote 80% of the code for me but I don't have time to finish. Looking for someone to complete this project quickly.
Prices in CAD.
The function signature should be:
public BufferedImage transformImage(BufferedImage image, BufferedImage background)
The transformations to be applied are:
- RandomPerspective with a distortion scale of 0.2 and a probability of 0.8
- ColorJitter with slight variations in brightness, contrast, hue, and saturation
- GaussianBlur with a kernel size of (7, 7) and a sigma between 0.1 and 3
- RandomRotation applied with a 30% probability
( transforms = v2.Compose([
v2.RandomPerspective(distortion_scale=0.2, p=.8),
v2.ColorJitter(brightness=.1, contrast=.1, hue=.1, saturation=0.1),
v2.GaussianBlur(kernel_size=(7, 7), sigma=(0.1, 3.)),
v2.RandomApply([v2.RandomRotation(degrees=(90,90), expand=True)], p=0.3)
])
The images to be processed will be sourced from local files and the function should only need to support a single image format. While speed is important, it is not critical. The implementation can use any image processing package, OpenCV or JAI, although I have no preference.
Ideal skills for the job include:
- Proficiency in Java
- Experience with image processing
- Familiarity with OpenCV or JAI
- Ability to write efficient and clean code.
Attached are an example of the image.
brb-1-abyssal-specter.png is the given image.
pexels-bri-schneiter-28802-346529.jpg is the background
final.jpg is the result.
Output image has to have the same aspect ratio as the input image but the size can be a bit bigger. The background will have to be cropped.
I tried with Gemini and I wrote 80% of the code for me but I don't have time to finish. Looking for someone to complete this project quickly.
Prices in CAD.