Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add ImageList class #534

Merged
merged 75 commits into from
Apr 10, 2024
Merged

Conversation

Marsmaennchen221
Copy link
Contributor

@Marsmaennchen221 Marsmaennchen221 commented Jan 25, 2024

Closes #528, #599, #600

Summary of Changes

Added ImageList class.

@Marsmaennchen221 Marsmaennchen221 linked an issue Jan 25, 2024 that may be closed by this pull request
Copy link
Contributor

github-actions bot commented Jan 25, 2024

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ PYTHON black 43 0 0 2.28s
✅ PYTHON mypy 43 0 3.58s
✅ PYTHON ruff 43 0 0 0.26s
✅ REPOSITORY git_diff yes no 0.38s

See detailed report in MegaLinter reports
Set VALIDATE_ALL_CODEBASE: true in mega-linter.yml to validate all sources, not only the diff

MegaLinter is graciously provided by OX Security

Copy link

codecov bot commented Jan 25, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 100.00%. Comparing base (2bc0b0a) to head (2dd5e37).

Additional details and impacted files
@@             Coverage Diff             @@
##              main      #534     +/-   ##
===========================================
  Coverage   100.00%   100.00%             
===========================================
  Files           56        61      +5     
  Lines         3493      4609   +1116     
===========================================
+ Hits          3493      4609   +1116     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

feat: Added Image.change_channel to change between grayscale, RGB and RGBA
feat: Declared all methods in ImageSet
refactor: moved the image test path variables and methods to a helper file
feat: added clone method for image_set
feat: added DuplicateIndexError
feat: added list of indices as optional parameter of IndexOutOfBoundsError
perf: improved performance of various methods in image_set
fix: fixed indices in add_images method
test: added tests for various methods in ImageSet
fix: fixed a lot of bugs in the ImageSet methods
refactor: Renamed ImageSet to ImageList
refactor: Renamed FixedSizedImageSet to SingleSizeImageList
refactor: Renamed VariousSizedImageSet to MultiSizeImageList
test: Added tests for remove image methods in ImageList
…-a-new-imageset-class

# Conflicts:
#	src/safeds/data/image/containers/_image.py
@Marsmaennchen221 Marsmaennchen221 changed the title feat: Add ImageSet class feat: Add ImageList class Mar 20, 2024
@Marsmaennchen221
Copy link
Contributor Author

@WinPlay02 Please look over the hash and size implementation

megalinter-bot and others added 5 commits April 5, 2024 08:34
feat: Added missing errors and warnings #599
fix: Fixed wrong indices in `ImageList.remove_images_with_size`
refactor: Moved transformation error and warning checks to utils file
@WinPlay02
Copy link
Contributor

@Marsmaennchen221 See #617 for changes to the hashing (+ merging master)

WinPlay02 and others added 4 commits April 10, 2024 15:01
### Summary of Changes

- adapts the image list to the new common hashing infrastructure
- also resolves conflicts from merging in the master branch

This PR targets the image list branch

---------

Co-authored-by: Alexander Gréus <[email protected]>
…-a-new-imageset-class

# Conflicts:
#	src/safeds/data/image/containers/_image.py
#	src/safeds/data/tabular/transformation/_imputer.py
#	src/safeds/data/tabular/typing/_imputer_strategy.py
#	src/safeds/ml/classical/classification/_support_vector_machine.py
#	src/safeds/ml/classical/regression/_support_vector_machine.py
#	tests/safeds/ml/classical/classification/test_support_vector_machine.py
#	tests/safeds/ml/classical/regression/test_support_vector_machine.py
@Marsmaennchen221 Marsmaennchen221 merged commit 3cb74a2 into main Apr 10, 2024
8 checks passed
@Marsmaennchen221 Marsmaennchen221 deleted the 528-add-a-new-imageset-class branch April 10, 2024 19:26
lars-reimann pushed a commit that referenced this pull request Apr 17, 2024
## [0.21.0](v0.20.0...v0.21.0) (2024-04-17)

### Features

* add ARIMA model ([#577](#577)) ([8b9c7a9](8b9c7a9)), closes [#570](#570)
* Add ImageList class ([#534](#534)) ([3cb74a2](3cb74a2)), closes [#528](#528) [#599](#599) [#600](#600)
* more hash, sizeof and eq implementations ([#609](#609)) ([2bc0b0a](2bc0b0a))

### Performance Improvements

* Add special case to `Table.add_rows` to increase performance ([#608](#608)) ([ffb8304](ffb8304)), closes [#606](#606)
* improve performance of model & forward layer ([#616](#616)) ([e856cd5](e856cd5)), closes [#610](#610)
* lazily import our modules and external libraries ([#624](#624)) ([20fc313](20fc313))
* treat Tables specially when calling add_rows ([#606](#606)) ([e555b85](e555b85)), closes [#575](#575)
@lars-reimann
Copy link
Member

🎉 This PR is included in version 0.21.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@lars-reimann lars-reimann added the released Included in a release label Apr 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
released Included in a release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Minor issues with documentation of Image Bounds checks for some Image methods Add a new ImageSet Class
5 participants