22
33import itk
44
5- from itkwasm import Image
5+ from itkwasm import Image , ImageType
66from dataclasses import asdict
77import numpy as np
88
@@ -12,6 +12,10 @@ def test_image():
1212 itk_image = itk .imread (data , itk .UC )
1313 itk_image_dict = itk .dict_from_image (itk_image )
1414 itkwasm_image = Image (** itk_image_dict )
15+ assert itkwasm_image .bufferedRegion .index [0 ] == 0
16+ assert itkwasm_image .bufferedRegion .index [1 ] == 0
17+ assert itkwasm_image .bufferedRegion .size [0 ] == 256
18+ assert itkwasm_image .bufferedRegion .size [1 ] == 256
1519 itkwasm_image_dict = asdict (itkwasm_image )
1620 itk_image_roundtrip = itk .image_from_dict (itkwasm_image_dict )
1721 difference = np .sum (itk .comparison_image_filter (itk_image , itk_image_roundtrip ))
@@ -38,3 +42,40 @@ def test_image_defaults():
3842
3943 assert isinstance (image .metadata , dict )
4044 assert image .data == None
45+
46+ def test_image_with_data ():
47+ """Test creating an Image with data."""
48+ image_type = ImageType (
49+ dimension = 2 ,
50+ componentType = "uint8" ,
51+ pixelType = "Scalar" ,
52+ components = 1 ,
53+ )
54+ data = np .zeros ((5 , 6 ), dtype = np .uint8 )
55+
56+ image = Image (
57+ imageType = image_type ,
58+ data = data ,
59+ )
60+
61+ assert image .imageType .dimension == 2
62+ assert image .imageType .componentType == "uint8"
63+ assert image .imageType .pixelType == "Scalar"
64+ assert image .imageType .components == 1
65+
66+ assert image .name == "Image"
67+ assert image .origin [0 ] == 0.0
68+ assert image .origin [1 ] == 0.0
69+ assert image .spacing [0 ] == 1.0
70+ assert image .spacing [1 ] == 1.0
71+ assert np .array_equal (image .direction , np .eye (2 ).astype (np .float64 ))
72+
73+ assert image .size [0 ] == 1
74+ assert image .size [1 ] == 1
75+
76+ assert isinstance (image .metadata , dict )
77+ assert np .array_equal (image .data , data )
78+ assert image .bufferedRegion .index [0 ] == 0
79+ assert image .bufferedRegion .index [1 ] == 0
80+ assert image .bufferedRegion .size [0 ] == 6
81+ assert image .bufferedRegion .size [1 ] == 5
0 commit comments