@@ -17,6 +17,7 @@ static MP_DEFINE_CONST_FUN_OBJ_KW(cv2_highgui_waitKey_obj, 0, cv2_highgui_waitKe
17
17
18
18
// OpenCV imgcodecs module
19
19
static MP_DEFINE_CONST_FUN_OBJ_KW (cv2_imgcodecs_imread_obj , 1 , cv2_imgcodecs_imread ) ;
20
+ static MP_DEFINE_CONST_FUN_OBJ_KW (cv2_imgcodecs_imwrite_obj , 2 , cv2_imgcodecs_imwrite ) ;
20
21
21
22
// OpenCV imgproc module
22
23
static MP_DEFINE_CONST_FUN_OBJ_KW (cv2_imgproc_adaptiveThreshold_obj , 6 , cv2_imgproc_adaptiveThreshold ) ;
@@ -92,7 +93,7 @@ static const mp_rom_map_elem_t cv2_module_globals_table[] = {
92
93
{ MP_ROM_QSTR (MP_QSTR_BORDER_DEFAULT ), MP_ROM_INT (4 ) },
93
94
{ MP_ROM_QSTR (MP_QSTR_BORDER_ISOLATED ), MP_ROM_INT (16 ) },
94
95
95
- // Image read mode flags, from opencv2/imgcodecs.hpp
96
+ // Image read flags, from opencv2/imgcodecs.hpp
96
97
{ MP_ROM_QSTR (MP_QSTR_IMREAD_UNCHANGED ), MP_ROM_INT (-1 ) },
97
98
{ MP_ROM_QSTR (MP_QSTR_IMREAD_GRAYSCALE ), MP_ROM_INT (0 ) },
98
99
{ MP_ROM_QSTR (MP_QSTR_IMREAD_COLOR_BGR ), MP_ROM_INT (1 ) },
@@ -109,6 +110,45 @@ static const mp_rom_map_elem_t cv2_module_globals_table[] = {
109
110
{ MP_ROM_QSTR (MP_QSTR_IMREAD_IGNORE_ORIENTATION ), MP_ROM_INT (128 ) },
110
111
{ MP_ROM_QSTR (MP_QSTR_IMREAD_COLOR_RGB ), MP_ROM_INT (256 ) },
111
112
113
+ // Image write flags, from opencv2/imgcodecs.hpp
114
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG_QUALITY ), MP_ROM_INT (1 ) },
115
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG_PROGRESSIVE ), MP_ROM_INT (2 ) },
116
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG_OPTIMIZE ), MP_ROM_INT (3 ) },
117
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG_RST_INTERVAL ), MP_ROM_INT (4 ) },
118
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG_LUMA_QUALITY ), MP_ROM_INT (5 ) },
119
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG_CHROMA_QUALITY ), MP_ROM_INT (6 ) },
120
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG_SAMPLING_FACTOR ), MP_ROM_INT (7 ) },
121
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_PNG_COMPRESSION ), MP_ROM_INT (16 ) },
122
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_PNG_STRATEGY ), MP_ROM_INT (17 ) },
123
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_PNG_BILEVEL ), MP_ROM_INT (18 ) },
124
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_PXM_BINARY ), MP_ROM_INT (32 ) },
125
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_EXR_TYPE ), MP_ROM_INT ((3 << 4 ) + 0 ) },
126
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_EXR_COMPRESSION ), MP_ROM_INT ((3 << 4 ) + 1 ) },
127
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_EXR_DWA_COMPRESSION_LEVEL ), MP_ROM_INT ((3 << 4 ) + 2 ) },
128
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_WEBP_QUALITY ), MP_ROM_INT (64 ) },
129
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_HDR_COMPRESSION ), MP_ROM_INT ((5 << 4 ) + 0 ) },
130
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_PAM_TUPLETYPE ), MP_ROM_INT (128 ) },
131
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_TIFF_RESUNIT ), MP_ROM_INT (256 ) },
132
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_TIFF_XDPI ), MP_ROM_INT (257 ) },
133
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_TIFF_YDPI ), MP_ROM_INT (258 ) },
134
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_TIFF_COMPRESSION ), MP_ROM_INT (259 ) },
135
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_TIFF_ROWSPERSTRIP ), MP_ROM_INT (278 ) },
136
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_TIFF_PREDICTOR ), MP_ROM_INT (317 ) },
137
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEG2000_COMPRESSION_X1000 ), MP_ROM_INT (272 ) },
138
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_AVIF_QUALITY ), MP_ROM_INT (512 ) },
139
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_AVIF_DEPTH ), MP_ROM_INT (513 ) },
140
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_AVIF_SPEED ), MP_ROM_INT (514 ) },
141
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEGXL_QUALITY ), MP_ROM_INT (640 ) },
142
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEGXL_EFFORT ), MP_ROM_INT (641 ) },
143
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEGXL_DISTANCE ), MP_ROM_INT (642 ) },
144
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_JPEGXL_DECODING_SPEED ), MP_ROM_INT (643 ) },
145
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_GIF_LOOP ), MP_ROM_INT (1024 ) },
146
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_GIF_SPEED ), MP_ROM_INT (1025 ) },
147
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_GIF_QUALITY ), MP_ROM_INT (1026 ) },
148
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_GIF_DITHER ), MP_ROM_INT (1027 ) },
149
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_GIF_TRANSPARENCY ), MP_ROM_INT (1028 ) },
150
+ { MP_ROM_QSTR (MP_QSTR_IMWRITE_GIF_COLORTABLE ), MP_ROM_INT (1029 ) },
151
+
112
152
// Morphology operation types, from opencv2/imgproc.hpp
113
153
{ MP_ROM_QSTR (MP_QSTR_MORPH_ERODE ), MP_ROM_INT (0 ) },
114
154
{ MP_ROM_QSTR (MP_QSTR_MORPH_DILATE ), MP_ROM_INT (1 ) },
@@ -250,6 +290,7 @@ static const mp_rom_map_elem_t cv2_module_globals_table[] = {
250
290
////////////////////////////////////////////////////////////////////////////
251
291
252
292
{ MP_ROM_QSTR (MP_QSTR_imread ), MP_ROM_PTR (& cv2_imgcodecs_imread_obj ) },
293
+ { MP_ROM_QSTR (MP_QSTR_imwrite ), MP_ROM_PTR (& cv2_imgcodecs_imwrite_obj ) },
253
294
254
295
////////////////////////////////////////////////////////////////////////////
255
296
// OpenCV imgproc functions
0 commit comments