- Do not modify original image when resizing. (#151)
- The in-place version of resize function
imresize!
is optimized and exported. (#150)
- angles in
imrotate
are processed with high precision, restoring it to the same behavior you'd get from a manually-constructedtform
supplied towarp
. This can change the presence/absence of padding on the edges. (#148, #149)
This release contains numerous enhancements as well as quite a few deprecations. There are also internal changes that may cause small numerical differences from previous versions; these may be most obvious at the borders of the image, where decisions about inbounds/out-of-bounds can determine whether a "fill-value" is used instead of interpolation.
- Previously,
SubArray
passed toinvwarpedview
will use out-of-domain values to build a better result on the border. This violated the array abstraction and has therefore been removed. (#138) - Rounding for numerical stability in
warp
is now applied to the corner points instead of to the transformation coefficients. (#143) -
degree
andfill
arguments are deprecated in favor of their keyword versionsmethod
andfillvalue
. (#116) -
invwarpedview
is deprecated in favor ofInvWarpedView
. (#116, #138) -
warpedview
is deprecated in favor ofWarpedView
. (#116) -
restrict
/restrict!
are moved to more lightweight package ImageBase.jl. (#127) -
imresize
now works on transparent colorant types(e.g.,ARGB
). (#126) -
restrict
now works on 0-argument colorant types(e.g.,ARGB32
). (ImageBase#3) - Interpolations v0.13.3 compatibility (though 0.13.4 is now required). (#132)
-
restrict
on singleton dimension is now a no-op. (ImageBase#8) -
restrict
onOffsetArray
always returns anOffsetArray
result. (ImageBase#4)