mirror of
https://github.com/openmv/openmv.git
synced 2025-11-04 14:49:50 +08:00
Merge pull request #309 from kwagyeman/shadows
Add more ifdefs to remove OpenMV Cam M4 features...
This commit is contained in:
commit
dd4bcdad16
@ -29,36 +29,54 @@
|
|||||||
// Have built-in RGB->LAB table.
|
// Have built-in RGB->LAB table.
|
||||||
#define OMV_HAVE_LAB_TABLE
|
#define OMV_HAVE_LAB_TABLE
|
||||||
|
|
||||||
// Have built-in invariant table.
|
// Enable remove_shadows()
|
||||||
#define OMV_HAVE_INVARIANT_TABLE
|
#define OMV_ENABLE_REMOVE_SHADOWS
|
||||||
|
|
||||||
// Enable Rotation_Correction
|
// Enable linpolar()
|
||||||
|
#define OMV_ENABLE_LINPOLAR
|
||||||
|
|
||||||
|
// Enable logpolar()
|
||||||
|
#define OMV_ENABLE_LOGPOLAR
|
||||||
|
|
||||||
|
// Enable chrominvar()
|
||||||
|
#define OMV_ENABLE_CHROMINVAR
|
||||||
|
|
||||||
|
// Enable illuminvar()
|
||||||
|
#define OMV_ENABLE_ILLUMINVAR
|
||||||
|
|
||||||
|
// Enable rotation_corr()
|
||||||
#define OMV_ENABLE_ROTATION_CORR
|
#define OMV_ENABLE_ROTATION_CORR
|
||||||
|
|
||||||
// Enable Find_Line_Segments
|
// Enable get_similarity()
|
||||||
|
#define OMV_ENABLE_GET_SIMILARITY
|
||||||
|
|
||||||
|
// Enable find_lines()
|
||||||
|
#define OMV_ENABLE_FIND_LINES
|
||||||
|
|
||||||
|
// Enable find_line_segments()
|
||||||
#define OMV_ENABLE_FIND_LINE_SEGMENTS
|
#define OMV_ENABLE_FIND_LINE_SEGMENTS
|
||||||
|
|
||||||
// Enable Find_Circles
|
// Enable find_circles()
|
||||||
#define OMV_ENABLE_FIND_CIRCLES
|
#define OMV_ENABLE_FIND_CIRCLES
|
||||||
|
|
||||||
// Enable Find_Rects
|
// Enable find_rects()
|
||||||
#define OMV_ENABLE_FIND_RECTS
|
#define OMV_ENABLE_FIND_RECTS
|
||||||
|
|
||||||
// Enable QRCodes (14 KB)
|
// Enable find_qrcodes() (14 KB)
|
||||||
#define OMV_ENABLE_QRCODES
|
#define OMV_ENABLE_QRCODES
|
||||||
|
|
||||||
// Enable AprilTags (64 KB).
|
// Enable find_apriltags() (64 KB)
|
||||||
#define OMV_ENABLE_APRILTAGS
|
#define OMV_ENABLE_APRILTAGS
|
||||||
|
|
||||||
// Enable DataMatrices (26 KB).
|
// Enable find_datamatrices() (26 KB)
|
||||||
#define OMV_ENABLE_DATAMATRICES
|
#define OMV_ENABLE_DATAMATRICES
|
||||||
|
|
||||||
// Enable Barcodes (42 KB).
|
// Enable find_barcodes() (42 KB)
|
||||||
#define OMV_ENABLE_BARCODES
|
#define OMV_ENABLE_BARCODES
|
||||||
|
|
||||||
// Enable Phase Correlation
|
// Enable find_displacement()
|
||||||
#ifdef OMV_ENABLE_ROTATION_CORR
|
#ifdef OMV_ENABLE_ROTATION_CORR
|
||||||
#define OMV_ENABLE_PHASE_CORRELATION
|
#define OMV_ENABLE_FIND_DISPLACEMENT
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Enable LENET (200+ KB).
|
// Enable LENET (200+ KB).
|
||||||
|
|||||||
0
src/omv/img/shadow_removal.c
Normal file
0
src/omv/img/shadow_removal.c
Normal file
@ -1326,6 +1326,7 @@ static mp_obj_t py_image_min(mp_obj_t img_obj, mp_obj_t other_obj)
|
|||||||
return img_obj;
|
return img_obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef OMV_ENABLE_REMOVE_SHADOWS
|
||||||
static mp_obj_t py_image_remove_shadows(mp_obj_t img_obj, mp_obj_t other_obj)
|
static mp_obj_t py_image_remove_shadows(mp_obj_t img_obj, mp_obj_t other_obj)
|
||||||
{
|
{
|
||||||
image_t *arg_img = py_image_cobj(img_obj);
|
image_t *arg_img = py_image_cobj(img_obj);
|
||||||
@ -1344,7 +1345,9 @@ static mp_obj_t py_image_remove_shadows(mp_obj_t img_obj, mp_obj_t other_obj)
|
|||||||
|
|
||||||
return img_obj;
|
return img_obj;
|
||||||
}
|
}
|
||||||
|
#endif // OMV_ENABLE_REMOVE_SHADOWS
|
||||||
|
|
||||||
|
#ifdef OMV_ENABLE_LINPOLAR
|
||||||
static mp_obj_t py_image_linpolar(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
static mp_obj_t py_image_linpolar(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
||||||
{
|
{
|
||||||
image_t *arg_img = py_image_cobj(args[0]);
|
image_t *arg_img = py_image_cobj(args[0]);
|
||||||
@ -1357,7 +1360,9 @@ static mp_obj_t py_image_linpolar(uint n_args, const mp_obj_t *args, mp_map_t *k
|
|||||||
fb_alloc_free_till_mark();
|
fb_alloc_free_till_mark();
|
||||||
return args[0];
|
return args[0];
|
||||||
}
|
}
|
||||||
|
#endif // OMV_ENABLE_LINPOLAR
|
||||||
|
|
||||||
|
#ifdef OMV_ENABLE_LOGPOLAR
|
||||||
static mp_obj_t py_image_logpolar(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
static mp_obj_t py_image_logpolar(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
||||||
{
|
{
|
||||||
image_t *arg_img = py_image_cobj(args[0]);
|
image_t *arg_img = py_image_cobj(args[0]);
|
||||||
@ -1370,7 +1375,9 @@ static mp_obj_t py_image_logpolar(uint n_args, const mp_obj_t *args, mp_map_t *k
|
|||||||
fb_alloc_free_till_mark();
|
fb_alloc_free_till_mark();
|
||||||
return args[0];
|
return args[0];
|
||||||
}
|
}
|
||||||
|
#endif // OMV_ENABLE_LOGPOLAR
|
||||||
|
|
||||||
|
#ifdef OMV_ENABLE_CHROMINVAR
|
||||||
static mp_obj_t py_image_chrominvar(mp_obj_t img_obj)
|
static mp_obj_t py_image_chrominvar(mp_obj_t img_obj)
|
||||||
{
|
{
|
||||||
image_t *arg_img = py_image_cobj(img_obj);
|
image_t *arg_img = py_image_cobj(img_obj);
|
||||||
@ -1379,7 +1386,9 @@ static mp_obj_t py_image_chrominvar(mp_obj_t img_obj)
|
|||||||
imlib_chrominvar(arg_img);
|
imlib_chrominvar(arg_img);
|
||||||
return img_obj;
|
return img_obj;
|
||||||
}
|
}
|
||||||
|
#endif // OMV_ENABLE_CHROMINVAR
|
||||||
|
|
||||||
|
#ifdef OMV_ENABLE_ILLUMINVAR
|
||||||
static mp_obj_t py_image_illuminvar(mp_obj_t img_obj)
|
static mp_obj_t py_image_illuminvar(mp_obj_t img_obj)
|
||||||
{
|
{
|
||||||
image_t *arg_img = py_image_cobj(img_obj);
|
image_t *arg_img = py_image_cobj(img_obj);
|
||||||
@ -1388,6 +1397,7 @@ static mp_obj_t py_image_illuminvar(mp_obj_t img_obj)
|
|||||||
imlib_illuminvar(arg_img);
|
imlib_illuminvar(arg_img);
|
||||||
return img_obj;
|
return img_obj;
|
||||||
}
|
}
|
||||||
|
#endif // OMV_ENABLE_ILLUMINVAR
|
||||||
|
|
||||||
static mp_obj_t py_image_histeq(mp_obj_t img_obj)
|
static mp_obj_t py_image_histeq(mp_obj_t img_obj)
|
||||||
{
|
{
|
||||||
@ -1450,7 +1460,7 @@ static mp_obj_t py_image_rotation_corr(uint n_args, const mp_obj_t *args, mp_map
|
|||||||
fb_alloc_free_till_mark();
|
fb_alloc_free_till_mark();
|
||||||
return args[0];
|
return args[0];
|
||||||
}
|
}
|
||||||
#endif
|
#endif // OMV_ENABLE_ROTATION_CORR
|
||||||
|
|
||||||
static mp_obj_t py_image_mask_ellipse(mp_obj_t img_obj)
|
static mp_obj_t py_image_mask_ellipse(mp_obj_t img_obj)
|
||||||
{
|
{
|
||||||
@ -1461,6 +1471,7 @@ static mp_obj_t py_image_mask_ellipse(mp_obj_t img_obj)
|
|||||||
return img_obj;
|
return img_obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef OMV_ENABLE_GET_SIMILARITY
|
||||||
// Similarity Object //
|
// Similarity Object //
|
||||||
#define py_similarity_obj_size 4
|
#define py_similarity_obj_size 4
|
||||||
typedef struct py_similarity_obj {
|
typedef struct py_similarity_obj {
|
||||||
@ -1555,6 +1566,7 @@ static mp_obj_t py_image_get_similarity(mp_obj_t img_obj, mp_obj_t other_obj)
|
|||||||
o->max = mp_obj_new_float(max);
|
o->max = mp_obj_new_float(max);
|
||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
|
#endif // OMV_ENABLE_GET_SIMILARITY
|
||||||
|
|
||||||
// Statistics Object //
|
// Statistics Object //
|
||||||
#define py_statistics_obj_size 24
|
#define py_statistics_obj_size 24
|
||||||
@ -2688,6 +2700,7 @@ static mp_obj_t py_image_find_blobs(uint n_args, const mp_obj_t *args, mp_map_t
|
|||||||
return objects_list;
|
return objects_list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef OMV_ENABLE_FIND_LINES
|
||||||
static mp_obj_t py_image_find_lines(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
static mp_obj_t py_image_find_lines(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
||||||
{
|
{
|
||||||
image_t *arg_img = py_image_cobj(args[0]);
|
image_t *arg_img = py_image_cobj(args[0]);
|
||||||
@ -2731,6 +2744,7 @@ static mp_obj_t py_image_find_lines(uint n_args, const mp_obj_t *args, mp_map_t
|
|||||||
|
|
||||||
return objects_list;
|
return objects_list;
|
||||||
}
|
}
|
||||||
|
#endif // OMV_ENABLE_FIND_LINES
|
||||||
|
|
||||||
#ifdef OMV_ENABLE_FIND_LINE_SEGMENTS
|
#ifdef OMV_ENABLE_FIND_LINE_SEGMENTS
|
||||||
static mp_obj_t py_image_find_line_segments(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
static mp_obj_t py_image_find_line_segments(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
||||||
@ -2771,7 +2785,7 @@ static mp_obj_t py_image_find_line_segments(uint n_args, const mp_obj_t *args, m
|
|||||||
|
|
||||||
return objects_list;
|
return objects_list;
|
||||||
}
|
}
|
||||||
#endif
|
#endif // OMV_ENABLE_FIND_LINE_SEGMENTS
|
||||||
|
|
||||||
#ifdef OMV_ENABLE_FIND_CIRCLES
|
#ifdef OMV_ENABLE_FIND_CIRCLES
|
||||||
// Circle Object //
|
// Circle Object //
|
||||||
@ -3015,7 +3029,7 @@ static mp_obj_t py_image_find_rects(uint n_args, const mp_obj_t *args, mp_map_t
|
|||||||
|
|
||||||
return objects_list;
|
return objects_list;
|
||||||
}
|
}
|
||||||
#endif
|
#endif // OMV_ENABLE_FIND_RECTS
|
||||||
|
|
||||||
#ifdef OMV_ENABLE_QRCODES
|
#ifdef OMV_ENABLE_QRCODES
|
||||||
// QRCode Object //
|
// QRCode Object //
|
||||||
@ -3184,7 +3198,7 @@ static mp_obj_t py_image_find_qrcodes(uint n_args, const mp_obj_t *args, mp_map_
|
|||||||
|
|
||||||
return objects_list;
|
return objects_list;
|
||||||
}
|
}
|
||||||
#endif
|
#endif // OMV_ENABLE_QRCODES
|
||||||
|
|
||||||
#ifdef OMV_ENABLE_APRILTAGS
|
#ifdef OMV_ENABLE_APRILTAGS
|
||||||
// AprilTag Object //
|
// AprilTag Object //
|
||||||
@ -3706,7 +3720,7 @@ static mp_obj_t py_image_find_barcodes(uint n_args, const mp_obj_t *args, mp_map
|
|||||||
}
|
}
|
||||||
#endif // OMV_ENABLE_BARCODES
|
#endif // OMV_ENABLE_BARCODES
|
||||||
|
|
||||||
#ifdef OMV_ENABLE_PHASE_CORRELATION
|
#ifdef OMV_ENABLE_FIND_DISPLACEMENT
|
||||||
// Displacement Object //
|
// Displacement Object //
|
||||||
#define py_displacement_obj_size 5
|
#define py_displacement_obj_size 5
|
||||||
typedef struct py_displacement_obj {
|
typedef struct py_displacement_obj {
|
||||||
@ -3814,7 +3828,7 @@ static mp_obj_t py_image_find_displacement(uint n_args, const mp_obj_t *args, mp
|
|||||||
|
|
||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
#endif // OMV_ENABLE_PHASE_CORRELATION
|
#endif // OMV_ENABLE_FIND_DISPLACEMENT
|
||||||
|
|
||||||
#ifdef OMV_ENABLE_LENET
|
#ifdef OMV_ENABLE_LENET
|
||||||
static mp_obj_t py_image_find_number(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
static mp_obj_t py_image_find_number(uint n_args, const mp_obj_t *args, mp_map_t *kw_args)
|
||||||
@ -4204,7 +4218,9 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_replace_obj, py_image_replace);
|
|||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_blend_obj, 2, py_image_blend);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_blend_obj, 2, py_image_blend);
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_max_obj, py_image_max);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_max_obj, py_image_max);
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_min_obj, py_image_min);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_min_obj, py_image_min);
|
||||||
|
#ifdef OMV_ENABLE_REMOVE_SHADOWS
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_remove_shadows_obj, py_image_remove_shadows);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_remove_shadows_obj, py_image_remove_shadows);
|
||||||
|
#endif
|
||||||
/* Image Morphing */
|
/* Image Morphing */
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_morph_obj, 3, py_image_morph);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_morph_obj, 3, py_image_morph);
|
||||||
/* Image Filtering */
|
/* Image Filtering */
|
||||||
@ -4213,10 +4229,18 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_mean_obj, 2, py_image_mean);
|
|||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_mode_obj, 2, py_image_mode);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_mode_obj, 2, py_image_mode);
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_median_obj, 2, py_image_median);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_median_obj, 2, py_image_median);
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_gaussian_obj, 1, py_image_gaussian);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_gaussian_obj, 1, py_image_gaussian);
|
||||||
|
#ifdef OMV_ENABLE_LINPOLAR
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_linpolar_obj, 1, py_image_linpolar);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_linpolar_obj, 1, py_image_linpolar);
|
||||||
|
#endif
|
||||||
|
#ifdef OMV_ENABLE_LOGPOLAR
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_logpolar_obj, 1, py_image_logpolar);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_logpolar_obj, 1, py_image_logpolar);
|
||||||
|
#endif
|
||||||
|
#ifdef OMV_ENABLE_CHROMINVAR
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_chrominvar_obj, py_image_chrominvar);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_chrominvar_obj, py_image_chrominvar);
|
||||||
|
#endif
|
||||||
|
#ifdef OMV_ENABLE_ILLUMINVAR
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_illuminvar_obj, py_image_illuminvar);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_illuminvar_obj, py_image_illuminvar);
|
||||||
|
#endif
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_histeq_obj, py_image_histeq);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_histeq_obj, py_image_histeq);
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_lens_corr_obj, 1, py_image_lens_corr);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_lens_corr_obj, 1, py_image_lens_corr);
|
||||||
#ifdef OMV_ENABLE_ROTATION_CORR
|
#ifdef OMV_ENABLE_ROTATION_CORR
|
||||||
@ -4224,14 +4248,18 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_rotation_corr_obj, 1, py_image_rotati
|
|||||||
#endif
|
#endif
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_mask_ellipse_obj, py_image_mask_ellipse);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_1(py_image_mask_ellipse_obj, py_image_mask_ellipse);
|
||||||
/* Image Statistics */
|
/* Image Statistics */
|
||||||
|
#ifdef OMV_ENABLE_GET_SIMILARITY
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_get_similarity_obj, py_image_get_similarity);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_2(py_image_get_similarity_obj, py_image_get_similarity);
|
||||||
|
#endif
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_get_histogram_obj, 1, py_image_get_histogram);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_get_histogram_obj, 1, py_image_get_histogram);
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_get_statistics_obj, 1, py_image_get_statistics);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_get_statistics_obj, 1, py_image_get_statistics);
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_get_regression_obj, 2, py_image_get_regression);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_get_regression_obj, 2, py_image_get_regression);
|
||||||
/* Color Tracking */
|
/* Color Tracking */
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_blobs_obj, 2, py_image_find_blobs);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_blobs_obj, 2, py_image_find_blobs);
|
||||||
/* Shape Detection */
|
/* Shape Detection */
|
||||||
|
#ifdef OMV_ENABLE_FIND_LINES
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_lines_obj, 1, py_image_find_lines);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_lines_obj, 1, py_image_find_lines);
|
||||||
|
#endif
|
||||||
#ifdef OMV_ENABLE_FIND_LINE_SEGMENTS
|
#ifdef OMV_ENABLE_FIND_LINE_SEGMENTS
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_line_segments_obj, 1, py_image_find_line_segments);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_line_segments_obj, 1, py_image_find_line_segments);
|
||||||
#endif
|
#endif
|
||||||
@ -4255,7 +4283,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_datamatrices_obj, 1, py_image_fi
|
|||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_barcodes_obj, 1, py_image_find_barcodes);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_barcodes_obj, 1, py_image_find_barcodes);
|
||||||
#endif
|
#endif
|
||||||
/* Template Matching */
|
/* Template Matching */
|
||||||
#ifdef OMV_ENABLE_PHASE_CORRELATION
|
#ifdef OMV_ENABLE_FIND_DISPLACEMENT
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_displacement_obj, 2, py_image_find_displacement);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(py_image_find_displacement_obj, 2, py_image_find_displacement);
|
||||||
#endif
|
#endif
|
||||||
#ifdef OMV_ENABLE_LENET
|
#ifdef OMV_ENABLE_LENET
|
||||||
@ -4321,7 +4349,9 @@ static const mp_map_elem_t locals_dict_table[] = {
|
|||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_blend), (mp_obj_t)&py_image_blend_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_blend), (mp_obj_t)&py_image_blend_obj},
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_max), (mp_obj_t)&py_image_max_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_max), (mp_obj_t)&py_image_max_obj},
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_min), (mp_obj_t)&py_image_min_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_min), (mp_obj_t)&py_image_min_obj},
|
||||||
|
#ifdef OMV_ENABLE_REMOVE_SHADOWS
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_remove_shadows), (mp_obj_t)&py_image_remove_shadows_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_remove_shadows), (mp_obj_t)&py_image_remove_shadows_obj},
|
||||||
|
#endif
|
||||||
/* Image Morphing */
|
/* Image Morphing */
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_morph), (mp_obj_t)&py_image_morph_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_morph), (mp_obj_t)&py_image_morph_obj},
|
||||||
/* Image Filtering */
|
/* Image Filtering */
|
||||||
@ -4330,10 +4360,18 @@ static const mp_map_elem_t locals_dict_table[] = {
|
|||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_mode), (mp_obj_t)&py_image_mode_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_mode), (mp_obj_t)&py_image_mode_obj},
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_median), (mp_obj_t)&py_image_median_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_median), (mp_obj_t)&py_image_median_obj},
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_gaussian), (mp_obj_t)&py_image_gaussian_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_gaussian), (mp_obj_t)&py_image_gaussian_obj},
|
||||||
|
#ifdef OMV_ENABLE_LINPOLAR
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_linpolar), (mp_obj_t)&py_image_linpolar_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_linpolar), (mp_obj_t)&py_image_linpolar_obj},
|
||||||
|
#endif
|
||||||
|
#ifdef OMV_ENABLE_LOGPOLAR
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_logpolar), (mp_obj_t)&py_image_logpolar_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_logpolar), (mp_obj_t)&py_image_logpolar_obj},
|
||||||
|
#endif
|
||||||
|
#ifdef OMV_ENABLE_CHROMINVAR
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_chrominvar), (mp_obj_t)&py_image_chrominvar_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_chrominvar), (mp_obj_t)&py_image_chrominvar_obj},
|
||||||
|
#endif
|
||||||
|
#ifdef OMV_ENABLE_ILLUMINVAR
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_illuminvar), (mp_obj_t)&py_image_illuminvar_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_illuminvar), (mp_obj_t)&py_image_illuminvar_obj},
|
||||||
|
#endif
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_histeq), (mp_obj_t)&py_image_histeq_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_histeq), (mp_obj_t)&py_image_histeq_obj},
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_lens_corr), (mp_obj_t)&py_image_lens_corr_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_lens_corr), (mp_obj_t)&py_image_lens_corr_obj},
|
||||||
#ifdef OMV_ENABLE_ROTATION_CORR
|
#ifdef OMV_ENABLE_ROTATION_CORR
|
||||||
@ -4341,7 +4379,9 @@ static const mp_map_elem_t locals_dict_table[] = {
|
|||||||
#endif
|
#endif
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_mask_ellipse), (mp_obj_t)&py_image_mask_ellipse_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_mask_ellipse), (mp_obj_t)&py_image_mask_ellipse_obj},
|
||||||
/* Image Statistics */
|
/* Image Statistics */
|
||||||
|
#ifdef OMV_ENABLE_GET_SIMILARITY
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_get_similarity), (mp_obj_t)&py_image_get_similarity_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_get_similarity), (mp_obj_t)&py_image_get_similarity_obj},
|
||||||
|
#endif
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_get_hist), (mp_obj_t)&py_image_get_histogram_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_get_hist), (mp_obj_t)&py_image_get_histogram_obj},
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_get_histogram), (mp_obj_t)&py_image_get_histogram_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_get_histogram), (mp_obj_t)&py_image_get_histogram_obj},
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_histogram), (mp_obj_t)&py_image_get_histogram_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_histogram), (mp_obj_t)&py_image_get_histogram_obj},
|
||||||
@ -4352,7 +4392,9 @@ static const mp_map_elem_t locals_dict_table[] = {
|
|||||||
/* Color Tracking */
|
/* Color Tracking */
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_find_blobs), (mp_obj_t)&py_image_find_blobs_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_find_blobs), (mp_obj_t)&py_image_find_blobs_obj},
|
||||||
/* Shape Detection */
|
/* Shape Detection */
|
||||||
|
#ifdef OMV_ENABLE_FIND_LINES
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_find_lines), (mp_obj_t)&py_image_find_lines_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_find_lines), (mp_obj_t)&py_image_find_lines_obj},
|
||||||
|
#endif
|
||||||
#ifdef OMV_ENABLE_FIND_LINE_SEGMENTS
|
#ifdef OMV_ENABLE_FIND_LINE_SEGMENTS
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_find_line_segments), (mp_obj_t)&py_image_find_line_segments_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_find_line_segments), (mp_obj_t)&py_image_find_line_segments_obj},
|
||||||
#endif
|
#endif
|
||||||
@ -4376,7 +4418,7 @@ static const mp_map_elem_t locals_dict_table[] = {
|
|||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_find_barcodes), (mp_obj_t)&py_image_find_barcodes_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_find_barcodes), (mp_obj_t)&py_image_find_barcodes_obj},
|
||||||
#endif
|
#endif
|
||||||
/* Template Matching */
|
/* Template Matching */
|
||||||
#ifdef OMV_ENABLE_PHASE_CORRELATION
|
#ifdef OMV_ENABLE_FIND_DISPLACEMENT
|
||||||
{MP_OBJ_NEW_QSTR(MP_QSTR_find_displacement), (mp_obj_t)&py_image_find_displacement_obj},
|
{MP_OBJ_NEW_QSTR(MP_QSTR_find_displacement), (mp_obj_t)&py_image_find_displacement_obj},
|
||||||
#endif
|
#endif
|
||||||
#ifdef OMV_ENABLE_LENET
|
#ifdef OMV_ENABLE_LENET
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user