https://github.com/michaeltoddprogramming/cos284pa05
Repo for Assembling Tears Practical Assignment 5
https://github.com/michaeltoddprogramming/cos284pa05
assembly assembly-x86 ppm ppm-image
Last synced: 4 months ago
JSON representation
Repo for Assembling Tears Practical Assignment 5
- Host: GitHub
- URL: https://github.com/michaeltoddprogramming/cos284pa05
- Owner: michaeltoddprogramming
- Created: 2024-10-20T08:48:28.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-10-28T13:48:01.000Z (about 1 year ago)
- Last Synced: 2025-02-08T23:45:17.389Z (9 months ago)
- Topics: assembly, assembly-x86, ppm, ppm-image
- Language: Assembly
- Homepage:
- Size: 8.37 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# COS284PA05 - PPM Image Processing
## Team Members
- **Michael Todd** (U23540223)
- **Corne de Lange** (U23788862)
- **Cobus Botha** (U23556502)
## Project Overview
This project involves processing PPM (Portable Pixmap) images using assembly language. The tasks include reading a PPM file, computing CDF (Cumulative Distribution Function) values, applying histogram equalization, and writing the processed image back to a PPM file.
## File Descriptions
### [task1_read_ppm_file.asm](task1_read_ppm_file.asm)
This file contains the code to read a binary P6 format PPM file and create a linked pixel structure. Each pixel connects to adjacent pixels (above, below, left, right).
Key functions:
- `readPPM`: Reads the PPM file and initializes the pixel structure.
- `skipComments`: Skips comment lines in the PPM file.
### [task2_compute_cdf_values.asm](task2_compute_cdf_values.asm)
This file contains the code to compute the CDF values from the pixel data.
Key functions:
- `computeCDFValues`: Computes the histogram and CDF values for the image.
### [task3_histogram_equalisation.asm](task3_histogram_equalisation.asm)
This file contains the code to apply histogram equalization to the image using the computed CDF values.
Key functions:
- `applyHistogramEqualization`: Applies histogram equalization to the pixel data.
### [task4_write_ppm.asm](task4_write_ppm.asm)
This file contains the code to write the processed image data back to a PPM file.
Key functions:
- `writePPM`: Writes the PPM header and pixel data to the output file.