-
Notifications
You must be signed in to change notification settings - Fork 2
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: mesh precompute functions and state generation #23
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The mesh creation relies on igneous, and provide some patch to overcome some identified bugs in igneous.
aranega
force-pushed
the
feature/CC-94
branch
from
September 19, 2024 02:06
dc6a542
to
e3e43e4
Compare
seankmartin
changed the title
CC-94 Code review and fixes for mesh generation functions
feat: mesh precompute functions and state generation
Sep 19, 2024
…s, and the mesh render scale also keep the names for "mesh" generation to distinguish from "seg" generation so that the interface can stay the same, but use aliases where there is no difference in the function
Adds ability to tag segmentations with a string label. This is across segmentation masks and meshes ![image_720](https://github.com/user-attachments/assets/7b9d4216-395d-4df1-8354-110b2be60fae)
seankmartin
approved these changes
Oct 2, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good!
manasaV3
approved these changes
Oct 7, 2024
manasaV3
pushed a commit
that referenced
this pull request
Dec 24, 2024
🤖 I have created a release *beep* *boop* --- ## [1.1.0](v1.0.0...v1.1.0) (2024-12-06) ### ✨ Features * add all hyperopts to contrast limits ([1fa9d6a](1fa9d6a)) * add decimation algorithm for contrast limit computation ([9499967](9499967)) * Add default opacity to 1 and blend to additive ([cb32980](cb32980)) * Add default opacity to 1 and blend to additive (CC-165) ([#27](#27)) ([3316c78](3316c78)) * add hide high noise option ([bf97c93](bf97c93)) * add initial hyperopt ([05ab24d](05ab24d)) * add optimisation for hyperparams to the contrast limit class w test ([17a311b](17a311b)) * add segmentation property objects ([d7664bc](d7664bc)) * add v1 of GMM and k-means contrast limits ([eda99a9](eda99a9)) * Add volume rendering contrast limits ([#25](#25)) ([10669d5](10669d5)) * Adding release please ([#19](#19)) ([4ec9ca7](4ec9ca7)) * allow seg gen to control the segments shown, have random colours, and the mesh render scale ([759def1](759def1)) * allow to not persist big zarrs ([62166af](62166af)) * better window limits from contrast ([96ece94](96ece94)) * change print to logging of chunk comparison size ([878a7a7](878a7a7)) * clean up contrast limits ([87e25e5](87e25e5)) * contrast limit improvements ([ff5ef94](ff5ef94)) * datasets for contrast limit testing ([25b7861](25b7861)) * Disable "pick" by default for segmentation layer. ([#28](#28)) ([8287be7](8287be7)) * Disable "pick" for default value in segmentation layer ([3af57f4](3af57f4)) * improve CDF based contrast limits ([822be9f](822be9f)) * improve high value hide control ([5d3a8ae](5d3a8ae)) * improve manual limits testing and add auto screenshots ([a24ad8c](a24ad8c)) * include manual test for contrast ([1882a91](1882a91)) * include new contrast limit methods ([75b1a2e](75b1a2e)) * incorportate hyperopt in api test ([0003de9](0003de9)) * link seg properties into mesh and seg creation ([dfbd34a](dfbd34a)) * main public API to limits tuning ([71112c9](71112c9)) * make public API to contrast limits ([30eaa75](30eaa75)) * mesh precompute functions and state generation ([#23](#23)) ([02439d8](02439d8)) * more control over image JSON generator ([e15bace](e15bace)) * more control over mesh from segmentation ([e1af340](e1af340)) * per comp GMM standard deviation ([94240a7](94240a7)) * progress on contrast limits ([5f9e7e0](5f9e7e0)) * tuned two best methods, need removal of tuning params ([f4c076f](f4c076f)) * tuning contrast limits ([356ca03](356ca03)) * update gmm sample size ([ff01ae5](ff01ae5)) * update shader names ([2dfe36f](2dfe36f)) * update tuning ([65c3f93](65c3f93)) ### 🐞 Bug Fixes * allow segmentation to overwrite existing segment properties ([#26](#26)) ([dc38b7d](dc38b7d)) * allow segmentation to overwrite existing segment properties on new run ([54c1b14](54c1b14)) * calculate grid size over all LODs, not LOD 0 only ([2753486](2753486)) * correct flag for projection_quaternion default ([2692a6d](2692a6d)) * correct numpy array in type hint after using | None ([945fbc8](945fbc8)) * correct octree processing at borders ([02cd34e](02cd34e)) * correct val typo for value in shader builder ([16b89ca](16b89ca)) * don't crash on projection quaternion, allow axis line hiding ([683babf](683babf)) * first round of octree improvements ([0f3d863](0f3d863)) * gmm limits don't go out of data bounds ([ae99495](ae99495)) * have VR limits inverted using our control not builtin ([ebc8911](ebc8911)) * improve contrast limits ([452a7bf](452a7bf)) * include patched octree in multires code ([1df1024](1df1024)) * issue with empty screenshots ([c4ff38a](c4ff38a)) * json scale typing and also processing for meshes ([4c5123c](4c5123c)) * process data in chunks for bounding box to not run out of memory ([7e09ce4](7e09ce4)) * remove accidental debug print ([b52ea24](b52ea24)) * remove top level matplotlib import ([62dddaa](62dddaa)) * **test:** test fixes after shader and limit changes ([7923a2a](7923a2a)) * update docstring for decimation aggressiveness ([2516420](2516420)) ### 📝 Documentation * add docstring ([bcc2c14](bcc2c14)) * improve docs on window from limits ([653cea1](653cea1)) * update notes about meshes ([29d7010](29d7010)) ### 💅 Styles * rename oriented point JSON generator ([#21](#21)) ([d1fd921](d1fd921)) ### 🧹 Miscellaneous Chores * formatting ([b19dd7d](b19dd7d)) * linting fix ([a066566](a066566)) * update lock file ([5fdc75c](5fdc75c)) ### ♻️ Code Refactoring * make calculator not intended to be reusable, but tied to a volume. Also make the base calc abstract ([b108b2d](b108b2d)) * remove Optional and more generic dirs, fix redundant code line ([f1a179a](f1a179a)) * remove timing function for experiment ([aeb13db](aeb13db)) * rename oriented point JSON generator ([2f2c8e9](2f2c8e9)) ### 🧪 Tests * add contrast limit test ([d70c05f](d70c05f)) * add manual test for mask from segmentation ([ea3ffd7](ea3ffd7)) * add other URLs for contrast limits ([4cef902](4cef902)) * better contrast limit manual test ([9a60925](9a60925)) * better mesh from seg test ([7d29fd6](7d29fd6)) * disable long running test ([d8af9d4](d8af9d4)) * update manual tests with seg properties ([b482f6e](b482f6e)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduce all the function necessary to perform multi-scale mesh generation: