Skip to content

Commit f0163fa

Browse files
authored
Update README.md
1 parent a0eaf2c commit f0163fa

File tree

1 file changed

+74
-17
lines changed

1 file changed

+74
-17
lines changed

README.md

Lines changed: 74 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@ ImageAlchemy - A PyQT5-based image processing application offering a variety of
66

77
## Table of Contents:
88
- [Description](#description)
9-
- [Features](#project-features)
9+
- [Features](#features)
1010
- [Quick Preview](#quick-preview)
11-
- [App Flow](#app-flow)
11+
- [User Interface Structure](#user_interface_structure)
1212
- [Folder Structure](#folder-structure)
1313
- [Executing program](#executing-program)
14+
- [App Flow](#app_flow)
1415
- [Shortcuts](#shortcuts)
1516
- [Future Updates](#future-updates)
1617
- [Help](#help)
@@ -20,7 +21,7 @@ ImageAlchemy - A PyQT5-based image processing application offering a variety of
2021
## Description
2122
ImageAlchemy is a comprehensive image processing application developed using PyQT5, providing a range of powerful techniques including grayscale conversion, noise addition, various filters, edge detection, thresholding, equalization, active contouring using Snake Algorithm, hybrid image creation, and Hough transformations. Remarkably, all functionalities are implemented from scratch, avoiding dependency on external libraries like OpenCV or Scikit-Image, ensuring a lightweight and self-contained solution for digital image processing needs.
2223

23-
## Project Features
24+
## Features
2425
:white_check_mark: **3 Ways to add an image to the viewport**
2526
- :heavy_check_mark: Using the import button in the **_File_** menu in the menu bar, or use the [shortcut](#shortcuts)
2627
- :heavy_check_mark: Drag and drop an image from your system
@@ -62,25 +63,43 @@ ImageAlchemy is a comprehensive image processing application developed using PyQ
6263
<div align="center">
6364

6465
![Apply and adjust local and global threshold effect](README_resources/Thresholding.gif)</div>
65-
## Shortcuts
6666

67-
<div align="center">
67+
## User Interface Structure
6868

69-
| Shortcut | Functionality |
70-
|--------------|----------------------------------------------------------------------|
71-
| Ctrl+I | Import Image |
72-
| Ctrl+S | Save the output image of the current image as PNG |
73-
| Shift+Ctrl+S | Save the output image of the current image and specify the extension |
74-
| Alt+S | Save all the output images of the opened images |
75-
| Ctrl+Q | Exit the app |
76-
| Ctrl+C | Show a guide on how to use the app (Currently unavailable) |
77-
| Ctrl+H | Open the documentation of the app (Currently unavailable) |
69+
![App Flow](https://github.com/Computer-Vision-Spring-2024/Task-2/blob/main/README_resources/App_Flow.png)
7870

79-
</div>
71+
The provided image serves as a guide to understanding the various sections of our app's interface. Below, we'll delve into each section's functionality and elucidate how users can navigate and utilize the app effectively.
8072

81-
## App Flow
73+
**`Menu Bar`**:
74+
Contained within this bar are four distinct menus:
8275

83-
![App Flow](https://github.com/Computer-Vision-Spring-2024/Task-2/blob/main/README_resources/App_Flow.png)
76+
1. **File Menu**: Primarily responsible for importing images, saving options for edited image outputs, and exiting the application.
77+
78+
2. **Edit Menu**: Under development, intended for customizing the app interface's appearance. Presently, it has no visible impact on the app.
79+
80+
3. **Tools Menu**: This menu currently houses the image library and examples for users to experiment with different image processing techniques.
81+
82+
4. **Help Menu**: Provides options to access the application's documentation and a guide on app usage. These features are currently unavailable as the app is still in development.
83+
84+
**`Main Viewport`**:
85+
86+
The viewport serves the purpose of displaying both the imported input image and the output image post-application of various processing techniques. Essentially, it functions as a tab, offering developers the flexibility to incorporate additional tabs for specific steps or plots related to certain effects in the future.
87+
88+
**`Image Tree`**:
89+
90+
Designed to facilitate the seamless navigation between different images and their associated effects, the image tree displays imported images along with their respective effects. Users can simply double-click on an image name within the tree to revert to a previously opened image.
91+
92+
**`Effects to Add`**:
93+
94+
This section features buttons representing specific effects. Users can expand the menu to view the names of each effect and add them to the current image by double-clicking the desired effect.
95+
96+
**`Effects Tweaking Menu`**:
97+
98+
Tailored to accommodate the specific attributes and parameters of each image processing technique, this menu displays controllers for adjusting these parameters. By default, it showcases the parameters of all effects applied to all images, organized within group boxes. However, users have the flexibility to focus on specific effects by double-clicking on their names within the tree.
99+
100+
**`Added Effects Table`**:
101+
102+
Currently unavailable in the app version provided, this table is under development. It will showcase the effects added to the current image, allowing users to create cumulative outputs if desired. Users can manipulate the table to show or hide all effects, revert to the original imported image, or remove specific effects. Furthermore, they can adjust the order of applied effects in the cumulative pipeline by dragging rows. Double-clicking on an effect will open a new tab exclusively visualizing the output of that effect, including any intermediate steps typically hidden from users.
84103

85104
## Folder Structure
86105
<table>
@@ -188,6 +207,44 @@ pip install -r requirements.txt
188207
```
189208
3. Run the file with the name "ImageAlchemyUI.py"
190209

210+
## App Flow
211+
212+
1. **Importing an Image**:
213+
214+
You can import an image in three ways: drag and drop, through the file menu, or by accessing the included image library within the app.
215+
216+
3. **Applying Effects**:
217+
218+
Simply **double-click** on the desired effect from the left sidebar. You can expand the sidebar to view the full names of each effect or hover over them to see a tooltip displaying their names.
219+
220+
3. **Fine-Tuning Effects**:
221+
222+
In the right-side panel, double-click on the effect's name from the tree. This will open a menu displaying all the parameters and controls. Adjust these to achieve the desired result.
223+
224+
5. **Navigating Images**:
225+
226+
Easily switch between different images by double-clicking their names in the image tree located in the right-side menu.
227+
228+
5. **Saving Output**:
229+
230+
To save the output image, simply press CTRL+S or access the save option from the File menu in the menu bar.
231+
232+
## Shortcuts
233+
234+
<div align="center">
235+
236+
| Shortcut | Functionality |
237+
|--------------|----------------------------------------------------------------------|
238+
| Ctrl+I | Import Image |
239+
| Ctrl+S | Save the output image of the current image as PNG |
240+
| Shift+Ctrl+S | Save the output image of the current image and specify the extension |
241+
| Alt+S | Save all the output images of the opened images |
242+
| Ctrl+Q | Exit the app |
243+
| Ctrl+C | Show a guide on how to use the app (Currently unavailable) |
244+
| Ctrl+H | Open the documentation of the app (Currently unavailable) |
245+
246+
</div>
247+
191248
## Future Updates
192249
In upcoming releases, we are planning to introduce a significant enhancement to our application by implementing cumulative effects output. This feature will revolutionize the image processing workflow by seamlessly integrating multiple effects. Specifically, the output generated by the first applied effect will serve as the input for subsequent effects. Also, we are working now on enhancing the app's performance to suit Computationally weak devices. All that besides, new processing techniques are coming soon.
193250

0 commit comments

Comments
 (0)