Skip to content

Commit 5bf39b4

Browse files
Merge remote-tracking branch 'origin/main'
# Conflicts: # README.md
2 parents 4f6d0fa + 49a77a7 commit 5bf39b4

File tree

1 file changed

+18
-10
lines changed

1 file changed

+18
-10
lines changed

README.md

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,25 +21,29 @@ This project implements a multiclass image classification pipeline using a pretr
2121
cd fse4ai_team_2
2222
```
2323

24-
2. Build the Docker Image:
24+
2. In Dockerfile, comment RUN make test, if you do not want to run tests
2525
```bash
26-
docker build -t image-classification .
26+
vim Dockerfile
2727
```
2828

29-
3. Run Makefile Targets:
29+
3. Build the Docker Image:
30+
```bash
31+
docker build -t classifier .
32+
```
33+
34+
4. Run Docker:
3035
Install dependencies and compile necessary components:
3136
```bash
32-
docker run --rm image-classification make prereqs
33-
docker run --rm image-classification make build
37+
docker run -it --rm -v "$(pwd)"/input_raw:/usr/src/app/input_raw -v "$(pwd)"/output:/usr/src/app/output -e INPUT_DIR=input_raw classifier
3438
```
3539

36-
### Testing the Setup
40+
<!-- ### Testing the Setup
3741
Verify that all system components function correctly:
3842
```bash
3943
docker run --rm image-classification make test
40-
```
44+
``` -->
4145

42-
## Usage
46+
<!-- ## Usage
4347
4448
### Docker Container Execution
4549
Execute the project within Docker, automating the full workflow from preprocessing to postprocessing:
@@ -62,24 +66,28 @@ Execute the project within Docker, automating the full workflow from preprocessi
6266
Alternatively, you can execute the entire pipeline using the default command:
6367
```bash
6468
docker run --rm -v $(pwd)/input_raw:/input_raw -v $(pwd)/output:/output image-classification
65-
```
69+
``` -->
6670

6771
## Makefile Details
6872
The project provides two Makefiles:
6973

7074
### Makefile (Build System)
7175
This Makefile is used to compile all binary executables and/or libraries necessary for the project. The Dockerfile relies on this Makefile to build the project inside a Docker image. It includes the following targets:
7276

77+
- **all**: Installs all dependencies and compiles all executables, i.e. steps prereqs and build.
7378
- **prereqs**: Installs all dependencies, compiles, and installs necessary components.
7479
- **build**: Compiles all necessary executables, including preprocessing (`preprocessing.out`) and postprocessing (`postprocessing.out`) executables.
7580
- **test**: Tests all steps of the pipeline, including verifying the correctness of preprocessing, processing, and postprocessing.
81+
- **clean**: Clean target to remove built files or unnecessary directories.
82+
7683

7784
### Makefile.run (Entry Point for Docker Image)
7885
This Makefile serves as an entry point for running the pipeline in the Docker container. It orchestrates the following steps:
7986

8087
- **preprocess**: Converts all files in `/input_raw` to a standardized format in `/input`.
81-
- **process**: Uses the neural network model to classify images from `/input` and writes results to `/output_raw`.
88+
- **inference**: Uses the neural network model to classify images from `/input` and writes results to `/output_raw`.
8289
- **postprocess**: Annotates images using results from `/output_raw` and saves them in `/output`.
90+
- **run**: Run the whole pipeline, i.e. it will execute preprocess, then inference, and, finally, postprocess.
8391

8492
## Example Input and Output
8593
- **Input**: The input is a raw image (`image.jpg`), which is first downscaled to `224x224` pixels in the preprocessing step.

0 commit comments

Comments
 (0)