{"id":22609219,"url":"https://github.com/oussamami01/image-processing-java-application","last_synced_at":"2025-03-28T22:44:32.963Z","repository":{"id":249644829,"uuid":"832097109","full_name":"OussamaMi01/Image-Processing-Java-Application","owner":"OussamaMi01","description":"This Java application provides a simple interface for performing fundamental image processing tasks. ","archived":false,"fork":false,"pushed_at":"2024-07-22T11:14:49.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-03T09:19:01.503Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OussamaMi01.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-22T10:51:01.000Z","updated_at":"2024-07-22T11:14:51.000Z","dependencies_parsed_at":"2024-07-22T13:06:41.772Z","dependency_job_id":null,"html_url":"https://github.com/OussamaMi01/Image-Processing-Java-Application","commit_stats":null,"previous_names":["oussamami01/image-processing-java-application"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OussamaMi01%2FImage-Processing-Java-Application","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OussamaMi01%2FImage-Processing-Java-Application/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OussamaMi01%2FImage-Processing-Java-Application/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OussamaMi01%2FImage-Processing-Java-Application/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OussamaMi01","download_url":"https://codeload.github.com/OussamaMi01/Image-Processing-Java-Application/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246112641,"owners_count":20725300,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-08T15:11:31.400Z","updated_at":"2025-03-28T22:44:32.941Z","avatar_url":"https://github.com/OussamaMi01.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Processing Java Application\n\n## Overview\n\n🎨 **Curious about what you can create with Java and GitHub?** Check out my latest personal project, now live on GitHub! 🌟 This project demonstrates fundamental image processing techniques using Java, with the development done using IntelliJ IDEA.\n\nThis is **part 2** of my previous Java app about image descriptors. Dive into the world of image processing with this **user-friendly Java application** that allows you to perform various image manipulation tasks.\n\n## Features\n\n- **Image Selection**: Choose an image file from your device using a file chooser dialog.\n- **Grayscale Conversion**: Convert the selected image to grayscale based on luminance values.\n- **Threshold Filter**: Apply a binary threshold filter to create a black-and-white effect.\n- **Image Resizing**: Resize the image by specifying new dimensions.\n- **Edge Detection**: Use the Sobel operator for edge detection.\n\n## Installation\n\n1. **Clone the Repository**:\n\n   ```bash\n   git clone https://github.com/OussamaMi01/image-processing-java.git\n   ```\n\n2. **Open the Project**:\n   - Open IntelliJ IDEA.\n   - Select `Open` and choose the cloned repository directory.\n\n3. **Build the Project**:\n   - Ensure you have the Java Development Kit (JDK) installed.\n   - Build the project using IntelliJ IDEA’s build tools.\n\n## Usage\n\n1. **Run the Application**:\n   - In IntelliJ IDEA, run the `ImageProcessingMain` class.\n\n2. **Select an Image**:\n   - A file chooser dialog will appear. Select the desired image file from your device.\n\n3. **Process the Image**:\n   - The application will automatically convert the image to grayscale, apply a threshold filter, resize it based on user input, and detect edges.\n\n4. **Save Processed Images**:\n   - The application will save the processed images at various stages with distinct filenames.\n\n## Code Explanation\n\n- **Main Class**:\n  - The `main` method handles the overall workflow: image selection, processing, and saving.\n- **Image Selection**:\n  - `chooseImageFile()` method uses `JFileChooser` for file selection.\n- **Image Processing**:\n  - Grayscale conversion averages RGB values.\n  - A threshold filter creates a binary image.\n  - User inputs new dimensions for resizing.\n  - Sobel operator applies edge detection.\n- **Helper Functions**:\n  - `applyFilter()` method applies the Sobel filter to each pixel.\n\n## Contributing\n\nIf you would like to contribute to this project, please follow these steps:\n\n1. Fork the repository.\n2. Create a new branch for your changes.\n3. Commit your changes and push them to your fork.\n4. Create a pull request describing your changes.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Contact\n\nFor any questions or feedback, please reach out to me via [GitHub](https://github.com/OussamaMi01).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foussamami01%2Fimage-processing-java-application","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foussamami01%2Fimage-processing-java-application","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foussamami01%2Fimage-processing-java-application/lists"}