Skip to content

chamals3n4/Nest-Project

 
 

Repository files navigation

CodeJam Logo

Introduction

This NestJS application implements core image processing algorithms that are divided into three sections.

  1. Basic Processing Algorithms
    • Greyscale
    • Negative
    • Resize
    • Rotate
    • Sharpen
    • Contrast
    • Emboss
  2. Image Enhancement Algorithms
    • Flood-fill
    • Histogram equalization
  3. Feature Detection Algorithms
    • Canny Edge Detection
    • Harris Corner Detection

This code contains deliberately planted logical errors that produce visual anomalies without causing compilation failures.

Your Mission

Your task is to find and fix all logical bugs in the codebase, and demonstrate how your fixes improve the output images. Success requires not just coding skills, but a deep understanding of image processing fundamentals and the ability to trace algorithm execution when results don't match expectations.

Project setup

$ npm install

Run all the services given below

# run main service
$ npm start cse40

# run basic-processing service
$ npm run start:basic-processing

# run enhancement service
$ npm run start:enhancement

# run feature-detection service
$ npm run start:feature-detection

API Documentation

To access the Swagger API Documentation:

http://localhost:3000/api

The Swagger UI provides interactive documentation for testing all available endpoints and viewing request formats.

Image Processing Implementation References

Operation Reference
Greyscale Operation RGB to Grayscale Conversion
Contrast Operation Algorithms for Adjusting Brightness and Contrast
Emboss Operation Refer Image Embossing Wikipedia article for proper implementation. You should use the specific enlarged kernel to control the depth of edges mentioned in the article.
Flood Fill Operation Flood Fill Algorithm to get an idea on how to implement. Note that pixel at position (400,250) is used as the reference point for flood filling and the pixels should be updated with Red color.
Canny Edge Detection Canny Edge Detection Step by Step

About

Repo Nest-Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 98.6%
  • JavaScript 1.4%