Skip to content

Releases: clEsperanto/CLIc

0.23.0

19 Jun 07:39

Choose a tag to compare

What's New

labels neighbors statistics by @StRigaud in #529

This release introduce a set of functions based on touching and distance matrices computed from label map to generate several quantification of neighborhood topology (number of neighbor, mean distance of neighbor, surface contact with neighbors, etc.)

In result we have now labels_neighbors_statistics which compute these for a given label image.
For clarity, statistics_of_labelled_pixels and statistics_of_background_and_labelled_pixels was merged an renamed labels_statistics.

Both labels_statisticsand labels_neighbors_statistics have an include_background flag

parametric map by @StRigaud in #530

Update of the parametric_map function API. The function plot back a statistics into a label map for visualisation and further topology quantification. Previous implementation was recomputing the statistics on the whole image at every call. Now, instead, we pass the statistics table.

auto
parametric_map_func(const Device::Pointer & device,
                    const Array::Pointer &  labels,
                    const StatisticsMap &   properties,
                    Array::Pointer          dst,
                    const std::string &     target_property) -> Array::Pointer;

Making it compatible with both labels_statisticsand labels_neighbors_statistics.

Full Changelog: 0.22.0...0.23.0

0.22.0

07 Apr 12:07
4eb4d92

Choose a tag to compare

What's New:

  • Add shallow copy and reshape Array method by @StRigaud in #512
  • Add support for DLPack by @StRigaud in #513
    • Add fromDLPack and toDLPack method to Array
  • Add support for Metal backend and improve CUDA backend efficiency by @StRigaud in #517
    • Backend support can is not defined by CMake option -DCLE_BACKEND

Fixes and updates

  • Fix backend instability introduced in 0.21 (#509)
    • Mainly impacting wrappers (pyclepseranto and clesperantoJ)

Full Changelog: 0.21.1...0.22.0

v0.21.1

17 Mar 12:54

Choose a tag to compare

Remove stub in backend manager which would allow 2 backend to coexist. Not backend a fully split to simplify management of library upstream.

Full Changelog: 0.21.0...0.21.1

v0.21.0

16 Mar 10:11
25df219

Choose a tag to compare

What's Changed

Fix and updates:

  • Update execute function to allow local size for better optimisation (#479, #487)
  • Multiple code refactoring (#472, #476, #482, #480)
  • Rework of the tests suites for cleaner and faster tests (#494)
  • Refactoring low-level function (#494)

New functions and improvements:

  • Add parametric_map functions (#470)
  • Add cos, sin, and several other math operators (#473)
  • Add partial standard-deviation (#474)
  • Add threshold_yen (#471)
  • Improve matmul (#481)
  • Set min and max values to nan as default (#484)
  • Update copy (#502)
  • Introduce the evaluate function for optimise elementwise operation (#494, #496)

Enable CUDA backend

  • Update cmake to better manage backend using CLE_BACKEND cmake option (#497)
  • Introduce a CUDA translation layer (#504, #499)
  • Update vkFFT integration to support CUDA (in #506)

Update CI

  • Use macos-14 runner (#485)
  • Split build for OpenCL and for CUDA (#495)
  • Consolidation of the CIs with Cache (#494)

Full Changelog: 0.20.1...0.21.0

v0.20.1

20 Nov 14:38
04d303c

Choose a tag to compare

What's Changed in #467

  • Fix pointlist to labeled spots
  • Fix artificial tissue generation function
  • Add threshold_mean for good measure

Full Changelog: 0.20.0...0.20.1

v0.20.0

14 Nov 14:54
b92df1c

Choose a tag to compare

What's Changed

Fixes

New

Full Changelog: 0.19.1...0.20.0

v0.19.1

04 Nov 16:36
c7e0e6b

Choose a tag to compare

What's Changed

Patch

  • Fixing name unpad_func to unpad by @StRigaud in #460
  • Update overall documentation by @StRigaud in #461
  • Increase ColumnLimit to 140 character

Full Changelog: 0.19.0...0.19.1

v0.19.0

24 Oct 12:04
b6e7de5

Choose a tag to compare

What's Changed

Update

Improvement of ridge detection filters by @StRigaud in #456

  • Update sato filter to detect bright on dark ridges instead of dark on bright ridges
  • Add a tubeness filter with same behaviour as Fiji tubeness filter

Add deskewing filters by @StRigaud in #459

  • Add 3D affine transform with deskewing function
  • Add deskew_x and deskew_y transforme for 3D volume
  • Warning: deskewing operation are only available on hardware compatible with OpenCL Image format

Fixes

Avoid fortran compiler search in windows CI by @StRigaud in #457

Full Changelog: 0.18.3...0.19.0

0.18.3

21 Aug 14:01
39e6556

Choose a tag to compare

What's Changed

  • Add runtime cache system for opencl program by @StRigaud in #447
    • Main objective is to reduce the call to clBuildProgram which, depending on OpenCL drivers, can create a significant memory leak
    • it is a short term cache with a maximum of 64 entry
    • it co-exist with the long term cache of pre-build program stored on local system

Full Changelog: 0.18.2...0.18.3

0.18.2

20 Aug 11:35
5c835a7

Choose a tag to compare

What's Changed

  • Fix a memory leak (discussed here) caused by a buffer pointer no deleted when allocating space for buffer by @StRigaud in #443 and #444

  • Side notes:
    No leak observed on Ubuntu system. valgrind report is in the clear and manual verification does not show increase of memory usage over iteration.
    Possible issue of memory bulking can be directly related to vendor implementation of OpenCL. Mainly for MacOS which does not support OpenCL anymore but instead rely on a CL2Metal convertion.

Full Changelog: 0.18.0...0.18.2