CamTools v0.1.5 Release Notes
The v0.1.5 release of CamTools brings a host of new features, significant improvements, and various fixes to enhance the overall functionality and usability of the library.
New Features and Improvements
- Render Geometries to Image: Introduced the ability to render geometries to an image with custom camera parameters, improving flexibility in rendering (#36).
- Line Radius in Render Geometries: Enabled
line_radius
support inct.render.render_geometries()
forLineSet
, enhancing the visual representation of lines (#38). - Efficient Image Cropping: Enhanced the performance of image cropping, allowing for faster and more efficient operations (#39).
- Depth Image Rendering: Added
ct.render.render_geometries
for rendering depth images, expanding the rendering capabilities (#57). - Image Scaling for Depth to Point Cloud: Added support for image scaling in
ct.project.depth_to_point_cloud()
, allowing for more versatile image processing (#54). - Single Point Transformation: Introduced functionality to transform a single point, providing more precise control in point manipulation (#60).
Refactoring
- Consistent Terminology: Renamed up-down to top-bottom and ensured consistent use of
tblr
throughout the codebase (#42). - Master to Main Transition: Updated links and CI configurations to transition from
master
tomain
, aligning with modern repository practices (#50). - Version Management: Switched to using
importlib.metadata
for version management for Python 3.8 and above, modernizing the build process (#51). - Projection API Enhancements: Improved projection APIs to enhance their functionality and usability (#53).
- Dependency Management: Removed
torch
dependency, ensuring it is only installed for image metrics, reducing unnecessary dependencies (#55). - Depth to Point Cloud API Change: Renamed
return_as_image
toto_image
indepth_to_point_cloud
, making the function naming more intuitive (#58). - Utility Module Renaming: Renamed
ct.utility
toct.util
, streamlining the utility module structure (#45).
Fixes
- Order Preservation in Loops: Ensured order preservation for
mt_loop
andmp_loop
, improving consistency in processing (#44). - PNG Handling in Crop-Borders Tool: Improved the handling of PNG files with alpha channels in the crop-borders tool (#35).
- OpenCV and OpenGL Conversion: Fixed issues with transformations and pose conversions between OpenCV and OpenGL (#52).
- Device Assertion Removal: Removed the assertion for the same device, fixing potential issues related to device handling (#56).
Documentation and Build
- Contribution Section: Added a new contribution section to the documentation, encouraging community participation and providing guidelines for contributors (#40).
- Strict Editable Mode Installation: Updated installation instructions to include strict editable mode, ensuring a more reliable setup process (#48).
List of Changes
- add built-with-camtools badges in #34
- fix: crop-boarders tool handle png with alpha channel in #35
- new: render geometries to image with custom camera parameters in #36
- new: extract rendering intrinsics (K) and extrinsics (T) set by Open3D in #37
- new: support line_radius in ct.render.render_geometries() for LineSet in #38
- perf: more efficient ct crop-boarders --same_crop in #39
- docs: add contribution section in #40
- feat: text renderer, artifact manager, image vstack in #41
- refactor: rename up-down to top-bottom, use tblr consistently in #42
- perf: faster cropping; parallel imread/crop; mt_loop and mp_loop helper functions in #43
- fix: preserve order for mt_loop and mp_loop in #44
- refactor: ct.utility->ct.util in #45
- ci: disable concurrency in #46
- docs: install with strict editable mode in #48
- refactor: rename create_camera_frames to create_camera_frustums in #49
- refactor: master->main for links and ci in #50
- build: use importlib.metadata to get version for py>=3.8 in #51
- fix: opencv<->opengl T and pose convert in #52
- refactor: improved projection APIs in #53
- new: support image scaling for ct.project.depth_to_point_cloud() in #54
- refactor: remove torch dependency, only install torch for image metrics in #55
- fix: remove assert same device in #56
- new: ct.render.render_geometries as depth image in #57
- refactor: return_as_image->to_image for depth_to_point_cloud in #58
- new: transform a single point in #60
- build: python version support update to 3.8 - 3.11 in #63
- build: v0.1.5 version bump in #65
Full Changelog: v0.1.4...v0.1.5
For more details, visit the CamTools GitHub repository. Your feedback and contributions are welcome.