# SimpleITK 2.2 Release Candidate 4

**URL:** https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226
**Category:** Announcements
**Tags:** python, csharp, elastix, java, simpleitk
**Created:** [July 29, 2022, 8:01pm UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226 "2022-07-29T20:01:28Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![blowekamp](https://discourse.itk.org/user_avatar/discourse.itk.org/blowekamp/32/79_2.png) [@blowekamp](https://discourse.itk.org/u/blowekamp)
#### Post date: [July 29, 2022, 8:01pm UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226/1 "2022-07-29T20:01:28Z")

</div>

Announcing the SimpleITK 2.2 Release Candidate 4!

Users and developers are encouraged to test the RC before the final release and report issues, bugs, and any compatibility problems. This is the final RC before the 2.2 final release.

In collaboration with the [Elastix](https://github.com/SuperElastix/elastix) team, the addition of [SimpleElastix](https://simpleelastix.github.io) as a compile time option is the highlight of this release. Please download the SimpleITK source and compile with the CMake SimpleITK\_USE\_ELASTIX option enabled to try out this experimental feature.

## Installing SimpleITK

Complete instructions on getting started with SimpleITK including downloading binaries or building SimpleITK can be found on the SimpleITK [Read the Docs web page](https://simpleitk.readthedocs.io/en/master/index.html).

### Python Binary Downloads

- Python binary wheels are available for download. It is important to have the latest version of pip for correct wheel compatibility and installation. To install the latest SimpleITK package from GitHub releases:

```auto
python -m pip install --upgrade pip
python -m pip install --pre SimpleITK --find-links https://github.com/SimpleITK/SimpleITK/releases/tag/v2.2rc4

```

# Release Notes

## New Features

- Add SimpleITK\_USE\_ELASTIX as a compile time option for [SimpleElastix](https://github.com/SuperElastix/SimpleElastix) classes: ElastixImageFilter, TransformixImageFilter. This option is currently disabled by default.
- Update ITK to 5.3rc04

## Bug Fixes

- Fix undefined behavior in BasicFilters.Cast test
- Fix GenericException assignment by using shared\_ptr internally
- Correct SinRegularizedHeaviside option for ScalarChanAndVeseDenseLevelSetImageFilter

## Documentation

- Reformat Python example for flake8
- Improve ImageSeriesReader documentation for method used to determining pixel type.

## Compilation

- Update MacOSX version in CI
- Build with SimpleITK\_USE\_ELASTIX enabled on Github Actions.

---

<div class="post-metadata">

### Author: ![mzukovec](https://discourse.itk.org/user_avatar/discourse.itk.org/mzukovec/32/2732_2.png) [@mzukovec](https://discourse.itk.org/u/mzukovec)
#### Post date: [July 31, 2022, 10:29am UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226/2 "2022-07-31T10:29:08Z")

</div>

Can we expect that the Elastix module will be included in public SimpleITK python wheels, when the official release is out?

---

<div class="post-metadata">

### Author: ![sag](https://discourse.itk.org/user_avatar/discourse.itk.org/sag/32/2041_2.png) [@sag](https://discourse.itk.org/u/sag)
#### Post date: [July 31, 2022, 5:50pm UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226/3 "2022-07-31T17:50:30Z")

</div>

Hi @mzukovec ,

I dont know because i have never used Elastix, but i have used simpleITK. it is a nice. I think you better question @matt.mccormick who is in charge of a lot of open source stuf or @blowekamp who help me with something in the simpleITK.

BR  
@sag

---

<div class="post-metadata">

### Author: ![dzenanz](https://discourse.itk.org/user_avatar/discourse.itk.org/dzenanz/32/1093_2.png) [@dzenanz](https://discourse.itk.org/u/dzenanz)
#### Post date: [July 31, 2022, 6:00pm UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226/4 "2022-07-31T18:00:59Z")

</div>

@blowekamp is the maintainer of SimpleITK, and he is able to give the authoritative answer about SimpleITK wheels. Someone from the elastix team might comment on that too, such as @Niels_Dekker.

---

<div class="post-metadata">

### Author: ![NHPatterson](https://discourse.itk.org/user_avatar/discourse.itk.org/nhpatterson/32/2873_2.png) [@NHPatterson](https://discourse.itk.org/u/NHPatterson)
#### Post date: [August 1, 2022, 1:17pm UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226/5 "2022-08-01T13:17:07Z")

</div>

I compiled for Linux x64 and elastix worked wrapped in python. It didn’t work for Arm64 on a MBP M1, problems installing and inability to generate a wheel, unfortunately, but I didn’t try too much to fix this.

@Niels_Dekker A second concern for me… will it be possible to add some flexibility in the SimpleElastix implementation to support more pixel types? Perhaps the generators can inherit from the compiled pixel type? I can compile elastix with different pixel types but the SimpleITK wrapping is locked to float.

See here:

> <https://github.com/SimpleITK/SimpleITK/blob/07002e245eab99ee0fc7a79e7b6ad500f999dbf1/Code/ElastixTransformixWrappers/src/sitkInternalUtilities.h#L13>

> <https://github.com/SimpleITK/SimpleITK/blob/07002e245eab99ee0fc7a79e7b6ad500f999dbf1/Code/ElastixTransformixWrappers/src/sitkElastixImageFilterImpl.cxx#L13>

> <https://github.com/SimpleITK/SimpleITK/blob/07002e245eab99ee0fc7a79e7b6ad500f999dbf1/Code/ElastixTransformixWrappers/src/sitkElastixImageFilterImpl.cxx#L180-190>

---

<div class="post-metadata">

### Author: ![blowekamp](https://discourse.itk.org/user_avatar/discourse.itk.org/blowekamp/32/79_2.png) [@blowekamp](https://discourse.itk.org/u/blowekamp)
#### Post date: [August 1, 2022, 1:17pm UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226/6 "2022-08-01T13:17:38Z")

</div>

> [@mzukovec](#):
>
> Can we expect that the Elastix module will be included in public SimpleITK python wheels, when the official release is out?

The publish binary for 2.2rc4 are as the 2.2.0 final will be configured and distributed, without the Elastix option enabled. The additional of Elastix adds to the distribution size, resource needed, time for compilations, and it is a relatively new addition as well. The SimpleITK will be looking into making Elastix an optional install in the future.

For now, you are encouraged to try to compile SimpleITK yourself with the SimpleITK\_USE\_ELASTIX option enable to try out the new feature and report any issues.

Enjoy!

---

<div class="post-metadata">

### Author: ![dchen](https://discourse.itk.org/user_avatar/discourse.itk.org/dchen/32/34_2.png) [@dchen](https://discourse.itk.org/u/dchen)
#### Post date: [August 1, 2022, 5:19pm UTC](https://discourse.itk.org/t/simpleitk-2-2-release-candidate-4/5226/7 "2022-08-01T17:19:50Z")

</div>

FYI, I just built SimpleITK with the Elastix module on a linux-aarch64 system. It built fine and all the Elastix tests passed.
