Skip to content

Commit 0c95276

Browse files
authored
Transfer support for ImageMeta (#44)
This came from Images.jl and is part of the code clean-out making Images.jl mostly a "meta-package." It's also better to put glue functionality in one of the packages that defines the components, since that ensures that the glue-code is always available whenever the operation can be supported. xref JuliaImages/Images.jl#971 This also deletes a schedule CI run, which risks disabling CI if activity is low.
1 parent 1957aa5 commit 0c95276

File tree

5 files changed

+20
-3
lines changed

5 files changed

+20
-3
lines changed

.github/workflows/UnitTest.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ on:
77
branches:
88
- master
99
pull_request:
10-
schedule:
11-
- cron: '20 00 1 * *'
1210

1311
jobs:
1412
test:

Project.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,21 @@ version = "0.2.12"
55
[deps]
66
ImageCore = "a09fc81d-aa75-5fe9-8630-4744c3626534"
77
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
8+
Requires = "ae029012-a4dd-5104-9daa-d747884805df"
89
TiledIteration = "06e1c1a7-607b-532d-9fad-de7d9aa2abac"
910

1011
[compat]
1112
Documenter = "0.24, 0.25"
1213
ImageCore = "0.9"
14+
Requires = "1"
1315
TiledIteration = "0.2, 0.3"
1416
julia = "1"
1517

1618
[extras]
1719
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
20+
ImageMetadata = "bc367c6b-8a6b-528e-b4bd-a4b897500b49"
1821
OffsetArrays = "6fe1bfb0-de20-5000-8ca7-80f57d26f881"
1922
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
2023

2124
[targets]
22-
test = ["Documenter", "OffsetArrays", "Test"]
25+
test = ["Documenter", "ImageMetadata", "OffsetArrays", "Test"]

src/ImageMorphology.jl

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ using ImageCore: GenericGrayImage
55
using LinearAlgebra
66
using Base.Cartesian # TODO: delete this
77
using TiledIteration: EdgeIterator
8+
using Requires
89

910
include("convexhull.jl")
1011
include("connected.jl")
@@ -59,4 +60,12 @@ export
5960

6061
clearborder
6162

63+
function __init__()
64+
@require ImageMetadata = "bc367c6b-8a6b-528e-b4bd-a4b897500b49" begin
65+
# morphological operations for ImageMeta
66+
dilate(img::ImageMetadata.ImageMeta, region=coords_spatial(img)) = ImageMetadata.shareproperties(img, dilate!(copy(ImageMetadata.arraydata(img)), region))
67+
erode(img::ImageMetadata.ImageMeta, region=coords_spatial(img)) = ImageMetadata.shareproperties(img, erode!(copy(ImageMetadata.arraydata(img)), region))
68+
end
69+
end
70+
6271
end # module

test/dilation_and_erosion.jl

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,11 @@
2626
@test Ae == cat(Ar, Ag, zeros(4,4), dims=3)
2727
# issue Images.jl #311
2828
@test dilate(trues(3)) == trues(3)
29+
# ImageMeta
30+
@test arraydata(dilate(ImageMeta(A))) == dilate(A)
31+
@test arraydata(dilate(ImageMeta(A), 1:2)) == dilate(A, 1:2)
32+
@test arraydata(erode(ImageMeta(A))) == erode(A)
33+
@test arraydata(erode(ImageMeta(A), 1:2)) == erode(A, 1:2)
2934
end
3035

3136
@testset "Opening / closing" begin

test/runtests.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ using ImageMorphology
22
using ImageCore
33
using Test
44
using OffsetArrays
5+
using ImageMetadata
6+
57

68
using Documenter
79
doctest(ImageMorphology, manual = false)

0 commit comments

Comments
 (0)