Release 1.13.0
(release date: 01 September 2023)
Release 1.12.3
(release date: 6 July 2023)
- New features
- Internal memory management utility has been exported
- Bug fix
- sb_init_dl , on Linux, did not return SB_ERR_LIBRARY_DEPENDENCIES error if there were a version mismatch between dl.so and sb_dl.so.
- General
- Errors code added
Release 1.12.2
(release date: 7 June 2023)
- New features
- sb_svl_run
- automatic management of svl dataset with unbalanced data (background and defects area strongly unbalanced) has beed added for Deep Surface projects.
- changes in svl loss function to improve the management of optional defects and collaborating model for Deep Surface projects.
- Bug fix
- sb_svl_run : fixed an error in handling blocks out of the image, only with Surface projects.
- sb_folder_load :
- the function filtered files with the name starting with '.', Linux only
- the function returned SB_ERR_INTERNAL error if there was a corrupted symbolic link, Linux only
- memory leak on error, Windows only
- General
- Functions added
Release 1.12.1
(release date: 12 May 2023)
Release 1.12.0
(release date: 23 December 2022)
- Bug fix
- sb_svl_run : for Surface projects with the parameter detection_out_of_roi enabled:
- it was possible that the last column of the voting plan was not calculated correctly
- in the results of the svl some blocks of the defects at the edge of the bounding box of the analysis roi were not present and therefore they were not even used.
- sb_image_convert : the function returned SB_ERR_NONE in case the image format was wrong.
- sb_project_detection : with Surface and Deep Surface projects: a labeling blob with an area less than the minimum area in correspondence with a defect blob of the voting plan was counted as a deleted blob.
- General
- Structures modified
- Enums modified
- Defines added
- SB_SVL_DL_FEATURES_PRUNING_MIN
- SB_SVL_DL_FEATURES_PRUNING_MAX
- SB_SVL_DL_FEATURES_PRUNING_GRANULARITY
- SB_SVL_DL_FEATURES_PRUNING_DEFAULT
Release 1.11.3
(release date: 24 November 2022)
Release 1.11.2
(release date: 19 October 2022)
Release 1.11.1
(release date: 20 September 2022)
Release 1.11.0
(release date: 12 September 2022)
- New features
- sb_project_change_type function has been added to change project type
- The sb_project_detection function has been changed so that, with Deep Surface projects and tile factor greater than 1, the voting plane on the boundary between the tiles has a smooth transition.
- Bug fix
- sb_svl_run : with Deep Cortex and Deep Surface projects, in the case of incremental svl and save best epoch enabled, the function saved the best epoch considering all the history of the svl results. The function has been corrected so that the best epoch is chosen only among the epochs of the last incremental training run.
- General
- Functions added
- Functions modified
- Structures modified
- Errors code added
- Errors code modified
- Enums added
Release 1.10.0 (deprecated)
(release date: 04 August 2022)
- New features
- Deep Cortex and Deep Surface modules have been added
- Automatic levels training for Surface projects. See sb_t_svl_sl_par::auto_levels
- Bug fix
- sb_image_load : in the case of bmp images, the case is managed with biCompression equal to 0 and biBitCount equal to 32
- sb_t_svl_par::fp_command : in the results passed to user it wasn't applied the tanh to goodness
- sb_image_info_remove_project returned the SB_ERR_NULL_POINTER error if the solution was older than the latest version.
- General
- Functions added
- Functions modified
- Functions renamed
- Functions eliminated
- Functions type modified
- sb_fp_svl_progress : type of the parameter res has been changed from "const sb_t_svl_res* const" to "sb_t_svl_res*"
- sb_fp_svl_command : type of the parameter res has been changed from "const sb_t_svl_res* const" to "sb_t_svl_res*"
- Structures added
- Structures modified
- Structures renamed
- Errors code added
- Enums added
- Enums modified
- Defines added
Release 1.9.7
(release date: 22 March 2022)
Release 1.9.6
(release date: 07 February 2022)
Release 1.9.5
(release date: 21 December 2021)
Release 1.9.4
(release date: 19 November 2021)
Release 1.9.3
(release date: 16 June 2021)
- Bug fix
- sb_svl_run : it returns error if there are enabled models with no levels enabled
Release 1.9.2
(release date: 24 May 2021)
Release 1.9.1
(release date: 16 April 2021)
Release 1.9.0
(release date: 13 January 2021)
- New features
- Surface ROI of defects: the optional of all models has been added
- Surface: the scale levels can be set separately for each model
- sb_svl_run Surface: reduced the system memory usage
- sb_svl_run Retina: SVL works with only warped2roi lut
- sb_svl_run : on SB_SVL_COMMAND_ABORT the results of previous SVL are restored
- Image: image compression and decompression functions
- sb_solution_get_info : if the file doesn't exist the function returns SB_ERR_FILE_NOT_EXIST. Before didn't returned error and the structure sb_t_projects_info had size 0
- sb_roi_reset : resets all pixel of the image
- sb_image_save : managed jpeg format
- sb_project_detection : it returns the error SB_ERR_MODEL_NOT_TRAINED if a model is not trained.
- Management of images with null size.
- sb_project_detection : improved detection speed of Surface projects
- Bug fix
- sb_roi_plot : the function did not consider the parameter color but it always used the color of the roi.
- Retina: with multiple models with different features it could happen that the weight of a sample changed according to the enabled models.
- sb_project_get_res : the value sb_t_sample::is_near may not have been set to 1 in the case of samples close to each other.
- sb_svl_run
- during SVL choose recipe step, the function puts the models with the previously found recipe in stand-by
- if a model or a level (other than the last one) was deleted, it could happen that at the start of the next SVL a reset was proposed because some features had been added.
- if the user stops SVL early, the results may be reset erroneously
- Surface SVL: in some cases if the user had performed a reset, a reset message was erroneously displayed when the SVL was launched
- Surface SVL: the first SVL after a change in the models collaborations did not manage the collaborations correctly.
- Surface SVL: with warped2roi lut, the samples that have the same coordinates on the original image as others already taken are discarded
- Retina SVL: with SB_SVL_PAR_OPTIMIZATION_TIME_FAST optimization mode the user is offered the optional reset if there are two or more models with different features or some models are trained and others are not.
- sb_project_save returned error with 64 models.
- sb_image_convert : bug fix SB_IMAGE_FORMAT_BGR888 to SB_IMAGE_FORMAT_BW8
- sb_roi_evaluate_bounding_box : if the roi is compressed, the function no longer decompresses the roi
- sb_project_check_trained : the function allows you to disable all models and / or all scale levels
- sb_project_set_par : if the project has more than two collaborating models and the collaborations are modified only the first two models are invalidated.
- Multi-project: buffer overflow if there were more than 32 projects has been fixed
- sb_image_rotate : corrected a write out of the buffer in the case bilinear equal to 0.
- sb_roi_set_ellipse : corrected memory error in case of out of boundary ellipse
- sb_blobs_detection : the function could generate a crash if there were a number of blobs greater than half the width of the image on an image line.
- sb_surface_blob_analysis : corrected optional blobs classification in case of multiple model defects on the same optional model gt
- sb_image_info_set_samples : the addition of a positive sample taken directly from the TN samples list of SVL results is accepted
- sb_project_detection : if all models are disabled the image wasn't classified as TRUE NEGATIVE
- sb_init : when called with SB_INIT_ONLY_SB_LICENSE_KEY the license wasn't managed correctly
- sb_release : fixed an error that could cause an application deadlook.
- General
- Functions added
- Functions modified
- Functions eliminated
- Functions renamed
- Defines modified:
- Enums added:
- Enums modified:
- Structures added
- Structures modified
- Structures renamed
- Errors code added
Release 1.8.4
(release date: 30 June 2020)
- Bug fix
- Surface SVL: a defect near the edge of the analysis roi with an optional part outside the analysis roi could be considered Out Of Roi.
- Retina SVL: if a svl was made without putting a sample, mandatory or optional, it happened that, even adding the sample, the training remained corrupt and to unlock the situation it was necessary to reset the svl.
Release 1.8.3
(release date: 16 June 2020)
- Bug fix
- SVL: with both optional and mandatory samples of the same model the svl could end with the error SB_ERR_INTERNAL .
- Surface SVL: it could happen that a defect close to but outside the roi generated a sample of defect inside the roi, therefore in the background. This sample created serious training problems.
- Surface SVL: it could happen that a defect close but outside the ROI was not counted as Out Of Roi.
- Surface SVL: a defect near the edge of the analysis roi with an optional part outside the analysis roi could be considered Out Of Roi.
Release 1.8.1
(release date: 2 April 2020)
- New features
- SVL has been made faster.
- Feature 3A has also been enable for grayscale image
- Feature 3B, 3C, 3D, 3E have been added
- On Linux system the image resize with bilinear interpolation has been added
- The vote plane border has been reduced
- Surface SVL: SVL works with only warped2roi lut
- Bug fix
- sb_project_get_res : no more error if the roi used for detection has a bounding box with a width/height less than 4. In this case surface planes are not allocated
- sb_roi_create : the width_step of the image was not aligned to 4 bytes.
- Retina: the weight of the samples was made independent of the position of the analysis ROI
- Surface: the quantization of the values close to zero in the voting plan has been corrected. Negative values close to zero are set to 127 instead of 128.
- Surface: for scale greater than 1 the value of the pixel of vote plane was made independent of the position of the analysis ROI.
- Surface SVL: fixed svl issues in case of too little roi on last svl image and low free memory condition
- Surface: fixed incorrect expansion of 3 pixels at the bottom of the voting plan.
- sb_surface_blob_analysis considers the defect starting from values greater or equal than 0 instead of greater than 0.
- Surface: sb_project_detection didn't consider the value set with function sb_set_circular_image_width
- Surface SVL: incremental SVL has been fixed with scale greater than 1x and warping enabled
- Surface SVL: SVL worked differently if the same image dataset was passed in RGB format instead of BGR
- sb_image_save : fixed false error of memory detected by sb_malloc_check_memory_leak in case of saving of png images
- sb_svl_run : the memory leak was fixed if the function was called more than once
- sb_svl_run : the function crashes when the project is loaded with SB_PROJECT_LOAD_DETECTION_ONLY
- If there are multiple models, sb_svl_run can return the SB_ERR_WRONG_PARAMETER error in the following case: the size of some models has been changed and the labeling of other models has been corrected because the sample has not been inserted in one or more points.
- SVL: error management of samples with same UUID
- sb_license_get_info : in case of difficult network connection it could happen that the function set sb_t_license_module::err with generic error SB_ERR_LICENSE instead of SB_ERR_LICENSE_FILE . In this case the SB GUI did not start the license tutorial.
- General
- Enums added
- Defines added
- Functions added
Release 1.8.0
(release date: 17 February 2020)
- New features
- Surface multi-level analysis: sb_project_detection can analyze the image at different scale levels, each with its own classifier
- A completely new Guides page in the documentation of SB library.
- A completely new FAQ page in the documentation of SB library.
- New tutorial surface_svl_simple.c.
- The computation time of the function sb_surface_blob_analysis has been optimized.
- sb_project_set_par no longer resets the statistics.
- The sb_project_get_res function returns new sample information: is_near and IoU
- The structures sb_t_par , sb_t_svl_res have been modified to manage the analysis on several levels.
- The function sb_license_apply_v2c allows you to burn the dongle with a new license.
- xml functions to manage the custom parameters of a project.
- New function to manage a project.
- The rules that make restoring training mandatory when the sb_svl_run function is performed have been changed.
- Bug fix
- sb_image_load
- sb_project_detection : a crash of the library in case of insufficient memory has been fixed.
- The following errors in sb_project_detection with Retina project has been fixed:
- if the sb_t_par_model::num_occurrences parameter was greater than 0, it could happen that a sample FALSE NEGATIVE , TRUE NEGATIVE or OPTIONAL NEGATIVE was counted twice;
- the value tn in sb_t_res was incorrectly set to 1 in case there was only FP occurrences;
- sb_project_detection in case of Retina project: if sb_t_par_model::num_occurrences is set to -1 it could happen that, in case there were some TRUE POSITIVE samples, the TRUE NEGATIVE sample wasn't added to the samples list.
- with a multimodel project and more than one model with the same dimension, the function returns a list of randomic occurrences if the ROI has no region in which the object can fit but a bounding box greater than object dimension.
- The truth of an OUT OF ROI sample was set to SB_TRUTH_OUT_OF_ROI even though its model was disabled.
- Internal errors in critical conditions.
- The following errors in sb_project_detection with Surface project has been fixed:
- ocr: disabled models were considered to evaluate x and y spacing, and scale was not considered.
- sb_project_get_res with Retina project:
- tanh was applied even if the weight of the sample was equal to -SB_VALUE_NOT_SET
- The image of weight was wrong in case of circular image and the sample between the start and the end of the image.
- The positive and negative values of the image of weight were not normalized for the same value.
- it could happen that a FALSE NEGATIVE or TRUE NEGATIVE sample had a positive weight.
- License: the module license status is set to SB_LICENSE_MODULE_STATUS_DISABLED if it is not present on the dongle.
- sb_t_svl_stat.num_samples_l : the samples used for the threshold were not added to the counter, moreover, the background samples were not added to the surface.
- sb_image_info_set_samples : The used for training property is removed if the center, scale factor or model of a sample is changed.
- sb_svl_reset : disabled models were reset.
- sb_samples_split : a memory leak error has been fixed.
- sb_svl_get_res : when the function was called after the function sb_project_load, the sb_t_sample::centre_warp of the samples of the list sb_t_svl_res::list_tp , sb_t_svl_res::list_tn , sb_t_svl_res::list_fp , sb_t_svl_res::list_fn , sb_t_svl_res::list_op , sb_t_svl_res::list_on , sb_t_svl_res::list_out_of_roi was not assigned.
- General
- Default value of field sb_t_svl_par::free_memory_percentage, for linux os, has been changed from 30% to 10%
- OCR: evaluation of x spacing has been changed. Before it was calculated as twice the average value of obj_size. Now it is calculated as twice the average value of obj_min_distance.
- For Retina project, feature 3A is no longer included in the default settings.
- Functions modified
- Functions renamed
- Functions added
- Functions eliminated
- sb_project_rename_model
- sb_project_remove_model
- sb_project_reset
- sb_image_info_rename_model
- sb_image_info_remove_model substituted by sb_image_info_apply_par_changes
- sb_surface_set_detection_level_scale
- sb_project_set_custom_par
- sb_project_get_custom_par
- sb_project_remove_custom_par
- sb_retina_load substituted by sb_project_load
- sb_surface_load substituted by sb_project_load
- sb_svl_running_step_format
- Structures added
- Structures renamed
- Structures modified
- sb_t_svl_err: fields centre and min_dist have been added.
- sb_t_stat:
- refactoring of common fields (tp, tn, fn, fn, op, on, out_of_roi, mod_disabled, precision, recall, accuracy, specificity) into sb_t_stat::global sub-structure field.
- field model has been removed
- sb_t_stat::models has been added
- sb_t_sample: fields is_near and IoU have been added
- sb_t_par:
- field scale has been replaced by sb_t_par.levels "levels"
- field optimization_level changed in speed_boost
- sb_t_invalidate_info renamed to sb_t_par_changes_info
- sb_t_svl_res:
- sb_t_license_configuration: field optimization_level changed in speed_boost
- sb_t_par_changes_info:
- fields sb_t_par_changes_info.lut_level_cur2new and sb_t_par_changes_info.lut_level_new2cur have been added
- field lut_cur2new has been renamed to lut_model_cur2new
- field lut_new2cur has been renamed to lut_model_new2cur
- sb_t_project_info:
- field name has been added
- Enums modified:
- Enums added:
- Enums removed:
- Defines modified
- Defines added
- Errors code added
Release 1.7.11
(release date: 11 Nov 2020)
- Bug fix
- General
- Enums modified:
Release 1.7.10
(release date: 08 Oct 2020)
- General
- Functions modified
Release 1.7.9
(release date: 02 Oct 2020)
- Bug fix
- Surface SVL: the first SVL after a change in the models collaborations did not manage the collaborations correctly.
Release 1.7.8
(release date: 22 Jun 2020)
- New features
- Image: image compression and decompression functions
- Bug fix
- SVL: with both optional and mandatory samples of the same model the svl could end with the error SB_ERR_INTERNAL .
- Surface SVL: it could happen that a defect close to but outside the roi generated a sample of defect inside the roi, therefore in the background. This sample created serious training problems.
- Surface SVL: it could happen that a defect close but outside the ROI was not counted as Out Of Roi.
- Surface SVL: a defect near the edge of the analysis roi with an optional part outside the analysis roi could be considered Out Of Roi.
- sb_project_save returned error with 64 models.
- Surface SVL: correct repeatibility of training in case of different OR defects
- Surface SVL: with warped2roi lut, the samples that have the same coordinates on the original image as others already taken are discarded
- Surface SVL: the area of the image labeled as defect for a model is ignored by the collaborating models during the training
- Retina SVL: if a svl was made without putting a sample, mandatory or optional, it happened that, even adding the sample, the training remained corrupt and to unlock the situation it was necessary to reset the svl.
- General
- Functions modified
- Functions added
Release 1.7.7
(release date: 08 May 2020)
- New features
- Retina SVL: SVL works with only warped2roi lut
- Surface SVL: Fast mode modified, same features for all the models
- Bug fix
- Retina SVL: in SB_SVL_PAR_OPTIMIZATION_TIME_FAST
- the user is offered the mandatory reset if there are two or more models with different features
- the user is offered the mandatory reset if there are multiple models, some of which are trained and others are not
- Surface SVL: in some cases if the user had performed a reset, a reset message was erroneously displayed when the SVL was launched
Release 1.7.6
(release date: 27 March 2020)
- New features
- The vote plane border has been reduced
- Surface SVL: SVL works with only warped2roi lut
- Bug fix
- Retina: the weight of the samples was made independent of the position of the analysis ROI
- Surface: sb_surface_detection didn't consider the value set with the function sb_set_circular_image_width
- Surface SVL: incremental SVL has been fixed with scale greater than 1x and warping enabled
- Surface SVL: SVL worked differently if the same image dataset was passed in RGB format instead of BGR
- sb_image_save : fixed false error of memory detected by sb_malloc_check_memory_leak in case of saving of png images
- If there are multiple models, sb_svl_run can return the SB_ERR_WRONG_PARAMETER error in the following case: the size of some models has been changed and the labeling of other models has been corrected because the sample has not been inserted in one or more points.
- SVL: error management of samples with same UUID
Release 1.7.5
(release date: 11 March 2020)
- New features
- SVL has been made faster.
- Feature 3A has also been enable for grayscale image
- On Linux system the image resize with bilinear interpolation has been added
- Bug fix
- sb_surface_blob_analysis : fixed stat update in case of null or too small roi.
- Retina: the weight of the samples was made independent of the position of the analysis ROI
- Surface: the quantization of the values close to zero in the voting plan has been corrected. Negative values close to zero are set to 127 instead of 128.
- Surface: for scale greater than 1 the value of the pixel of vote plane was made independent of the position of the analysis ROI.
- Surface SVL: fixed svl issues in case of too little roi on last svl image and low free memory condition
- Surface: fixed incorrect expansion of 3 pixels at the bottom of the voting plan.
- sb_surface_blob_analysis considers the defect starting from values greater or equal than 0 instead of greater than 0.
Release 1.7.4
(release date: 20 February 2020)
- Bug fix
- sb_project_save failed if after calling sb_svl_run the directory of the training dataset was removed
- sb_image_load
- In the case of a tiff image the function may return SB_ERR_NONE and a NULL image pointer.
- In the case of a png image and insufficient memory the function returned SB_ERR_IMAGE_DECODE instead of SB_ERR_MALLOC.
- The following errors in sb_project_detection with Retina project has been fixed:
- if the sb_t_par_model::num_occurrences parameter was greater than 0, it could happen that a sample FALSE NEGATIVE , TRUE NEGATIVE or OPTIONAL NEGATIVE was counted twice;
- the value tn in sb_t_res was incorrectly set to 1 in case there was only FP occurrences;
- sb_project_detection in case of Retina project: if sb_t_par_model::num_occurrences is set to -1 it could happen that, in case there were some TRUE POSITIVE samples, the TRUE NEGATIVE sample wasn't added to the samples list.
- with a multimodel project and more than one model with the same dimension, the function returns a list of randomic occurrences if the ROI has no region in which the object can fit but a bounding box greater than object dimension.
- The truth of an OUT OF ROI sample was set to SB_TRUTH_OUT_OF_ROI even though its model was disabled.
- Internal errors in critical conditions.
- The following errors in sb_project_detection with Surface project has been fixed:
- ocr: disabled models were considered to evaluate x and y spacing, and scale was not considered.
- sb_project_get_res with Retina project:
- tanh was applied even if the weight of the sample was equal to -SB_VALUE_NOT_SET
- The image of weight was wrong in case of circular image and the sample between the start and the end of the image.
- The positive and negative values of the image of weight were not normalized for the same value.
- sb_svl_reset : disabled models were reset.
- sb_samples_split : a memory leak error has been fixed.
- sb_get_circular_grow_width did not consider the scale factor.
- sb_svl_get_res : when the function was called after the function sb_project_load, the sb_t_sample::centre_warp of the samples of the list sb_t_svl_res::list_tp , sb_t_svl_res::list_tn , sb_t_svl_res::list_fp , sb_t_svl_res::list_fn , sb_t_svl_res::list_op , sb_t_svl_res::list_on , sb_t_svl_res::list_out_of_roi was not assigned.
- sb_surface_get_res : the function does not return error if the roi has a bounding box with a width or height less than 4. The results surface planes are NULL.
- sb_roi_create : the function align the width_step of the image to 4 bytes
- General
- Default value of field sb_t_svl_par::free_memory_percentage, for linux os, has been changed from 30% to 10%
- For Retina project, feature 3A is no longer included in the default settings.
Release 1.7.3
(release date: 27 September 2019)
- Bug fix
- linux: shared object libsb.so not compiled correctly
Release 1.7.1
(release date: 06 September 2019)
- New features
- project notes, image notes, project custom parameters: enabled UNICODE characters
- Bug fix
- sb_project_set_par returned error when called to add a model after has been called to removed a model.
- sb_project_load , sb_retina_load and sb_surface_load invalidate classificator of the disabled models.
Release 1.7.0
(release date: 29 August 2019)
- New features
- The parameters structures of Retina and Surface projects have been unified.
- Surface multi model
- For the classification of optional samples, two specific classes have been added: Optional Positive (SB_TRUTH_OPTIONAL_POSITIVE ) and Optional Negative (and SB_TRUTH_OPTIONAL_NEGATIVE )
- CPU RAM usage has been optimazed in order to reduce the used space
- Bug fix
- SVL: management of the command SB_SVL_COMMAND_CONTINUE in case of reason SB_SVL_STOP_CONFLICT was fixed.
- SVL: the samples OUT OF ROI are not used for training
- SVL: due to wrong assessment, training could have stopped before the required goodness target was reached.
- SVL: memory leak of the function sb_svl_run was fixed in case an error was returned.
- It could happen that an image, without samples and without required occurrences with enabled models, would not be classified as True Negative.
- General
- Functions renamed
- Functions eliminated
- sb_retina_par_init_model
- sb_retina_par_remove_model (substituted by sb_par_remove_model )
- sb_retina_par_format (substituted by sb_par_format )
- sb_retina_get_par (substituted by sb_project_get_par )
- sb_retina_set_par (substituted by sb_project_set_par )
- sb_retina_project_get_version (sustituted by sb_project_get_version)
- sb_retina_get_note (sustituted by sb_project_get_note )
- sb_retina_set_note (sustituted by sb_project_set_note )
- sb_retina_invalidate (sustituted by sb_project_invalidate )
- sb_retina_trained (sustituted by sb_check_trained )
- sb_retina_detection (sustituted by sb_project_detection )
- sb_surface_par_init_model
- sb_surface_par_remove_model (substituted by sb_par_remove_model )
- sb_surface_par_format (substituted by sb_par_format )
- sb_surface_get_par (substituted by sb_project_get_par )
- sb_surface_set_par (substituted by sb_project_set_par )
- sb_surface_project_get_version (sustituted by sb_project_get_version)
- sb_surface_get_note (sustituted by sb_project_get_note )
- sb_surface_set_note (sustituted by sb_project_set_note )
- sb_surface_invalidate (sustituted by sb_project_invalidate )
- sb_surface_trained (sustituted by sb_check_trained )
- sb_surface_detection (sustituted by sb_project_detection )
- Functions modified
- Functions added
- Structures modified
- sb_t_retina_par and sb_t_surface_par have been merged into sb_t_par.
- sb_t_sample: field model_index has been removed.
- sb_t_res: field models has been substituted with field par.
- sb_t_res: fields global and models have been added.
- sb_t_stat: field models_number has been removed.
- sb_t_stat: field par has been added.
- sb_t_stat: fields op, on have been added
- sb_t_stat_model: fields name and enabled have been removed.
- sb_t_stat_model: fields op, on, op_weight_max, op_weight_min, on_weight_max, on_weight_min have been added
- sb_t_surface_res: field weigth has been renamed to weight
- sb_t_svl_res: fields list_op, par and list_on have been added
- sb_t_svl_res: field models_number has been removed
- sb_t_svl_res_image: fields op and on have been added
- sb_t_svl_stat: fields op and on have been added
- sb_t_svl_stat: fields enabled, name and obj_size have been added
- sb_t_blob: fields lut, model_name, deleted have been added
- sb_t_blob: field model_index has been removed
- sb_t_blob_par: field keep_deleted has been added
- Structures added
- Enums added
- Enums modified
Release 1.6.2
(release date: 07 Jun 2019)
- New features
- Demo license has been enabled on Virual Machine.
- Bug fix
- General
- Parameter blob_par.merge_area_min in the structure sb_t_surface_par is initialized to 1 instead of 100.
- Function sb_surface_blob_analysis computes the number of TP considering the defects occurrencies instead of the defects ground truth.
- Functions added
- SB_ERR_LICENSE_VM message has been changed.
- The license now also uses the MAC address of ethernet interfaces that are disableb.
Release 1.6.0
(release date: 14 May 2019)
- New features
- Training has been enhanced
- Training of collaborative models has been enhanced
- sb_surface_detection : multi thread has been enabled
- sb_retina_detection : OCR has been added
- Surface: training has been time optimized
- Surface: optional defects
- Surface: training without defects
- Surface: image classification (good, overkill, escape, no good) has been added
- Surface: possibility to set the scale factor used to elaborate the image. See parameter scale in structure sb_t_surface_par
- License with 3 configuration: Basic, Standard, Premium
- Sample weight has been limited between -1 and 1
- New features rotation invariant have been added
- The 32-bit ROI mask has been replaced by the 8-bit BW image representation, see sb_t_roi
- In the case of Surface, the lists of samples in the structure sb_t_svl_res have been limited to 200 elements
- Bug fix
- Function that evaluates the distance between samples has been fixed.
The problem concerned the case in which the models had different "objects dimension" and/or "distance between objects".
- Check of out of roi condition has been fixed
- If type of project in a image info changes then samples and defects information are removed
- SVL failed if one of image hasn't defect roi in image_info
- SVL failed the saving in image info of the learning information if .rtn file contained more projects
- General
- Functions added
- Functions modified
- Functions sb_threshold_set and sb_threshold_get
- field scale has been added
- Function sb_fp_svl_pre_elaboration
- field image_info has been added
- field handle has been removed
- Function sb_image_info_change_project :
- field project_info_new has been replaced with field module_handle_new
- Structures added
- Structures modified
- Structures sb_t_svl_par, sb_t_retina_par, sb_t_surface_par
- field num_threads: if value equal to 0, the behavior has been changed for physical machines: from all available threads to half of available threads
- Structure sb_t_surface_par
- fields model and models_number have been replaced by field models
- field scale has been added
- Structure sb_t_blob_par
- fields gray_min, gray_max have been replaced by field lut
- Structure sb_t_blob
- field model_index has been added
- Structure sb_t_blobs
- field info_gt has been added
- Structure sb_t_image
- Type of field free_data has been changed from int to char*
- Defines added:
- Defines modified
- Enums modified
- Enum sb_t_project_type
- value SB_PROJECT_TYPE_BOTH has been added
- Error codes added:
- Features
- New features rotation invariant have been added:
- Other features added:
- Features removed:
- SB_FEATURE_2A_RGB
- SB_FEATURE_2B_RGB
- SB_FEATURE_2C_RGB
- SB_FEATURE_2D_RGB
- Changes for detection results
- Functions added
- Functions modified
- Function sb_retina_copy_res has been renamed to sb_copy_res
- Structures added
- Structures modified
- Structure sb_t_res
- field ocr has been added
- field models has been added
- fields v_plane, t_plane and defects_blobs have been replaced by field surface
- Structure sb_t_stat
- field good has been added
- field no_good has been added
- field overkill has been added
- field escape has been added
- Enums added
- Changes for new ROI management
- Functions added
- Functions modified
- Structures added
- Structure sb_t_roi
- fields width, height, width_step, free_data, data have been replaced by field img
- fields seg, n_seg have been replaced by field rle
- field bit_mask has been replaced by field lut
- Defines removed
- SB_SURFACE_DEFECTS_OPTIONAL_MASK
- Enums removed
- Changes for new management of license with configuration (Basic, Standard, Premium)
- The following errors code have been added
- Error code SB_ERR_LICENSE_FILE_NULL has been renamed to SB_ERR_LICENSE_FILE
- Structures added
- Structure sb_t_license_module
- field configuration has been added
- field training has been added
- Enums eliminated
- Enums added
- Functions eliminated:
- sb_license_format_module_code
- Functions modified:
- Functions added:
Release 1.5.1
(release date: 13 May 2019)
- Bug fix
- sb_folder_remove: fixed a problem that prevents the removing of the folder in some specific conditions
Release 1.5.0
(release date: 31 Oct 2018)
- Bug fix
- Loading of SVl results of project with version less than 1.3.1.2 has been fixed.
- New features
- "Surface" module has been added
- Blob Analysis
- Functions added
- Defines added:
- SB_FEATURE_2D
- SB_FEATURE_2A_R
- SB_FEATURE_2AA_R
- SB_FEATURE_2B_R
- SB_FEATURE_2C_R
- SB_FEATURE_2D_R
- SB_FEATURE_2A_G
- SB_FEATURE_2AA_G
- SB_FEATURE_2B_G
- SB_FEATURE_2C_G
- SB_FEATURE_2D_G
- SB_FEATURE_2A_B
- SB_FEATURE_2AA_B
- SB_FEATURE_2B_B
- SB_FEATURE_2C_B
- SB_FEATURE_2D_B
- SB_FEATURE_2A_RGB
- SB_FEATURE_2B_RGB
- SB_FEATURE_2C_RGB
- SB_FEATURE_2D_RGB
- SB_PAR_FEATURES_NAMES_LEN
- Enums added
- Enums removed
- Structures added
- Structure sb_t_svl_par
- field project_file has been removed
- Structure sb_t_projects_info
- field projects has been renamed to info
- field projects_num has been renamed to size
- structure sb_t_svl_res_image
- Structure sb_t_sample
- field bitmask has been removed
- Structure sb_t_sample
- field image_name dimension changed to SB_PAR_STRING_LEN
- Structure sb_t_stat_model
- fields or_weight_max and or_weight_min have been added
- Enum sb_t_svl_command:
- SB_SVL_COMMAND_ABORT has been added
- Enum sb_t_license_type:
- SB_LICENSE_NOT_PRESENT has been added
- Function sb_fp_svl_pre_elaboration
- parameter handle has been added
- Function sb_samples_get
- parameter retina_par has been removed
- The following functions have been replaced:
- sb_retina_save by sb_save
- sb_svl_save by sb_save
- sb_retina_svl_load by sb_load
- sb_retina_destroy by sb_destroy
- sb_retina_svl_destroy by sb_destroy
- sb_retina_par_set_custom by sb_par_set_custom
- sb_retina_par_get_custom by sb_par_get_custom
- sb_retina_par_remove_custom by sb_par_remove_custom
- sb_retina_sample_format_truth by sb_format_truth
- sb_retina_sample_copy by sb_sample_copy
- sb_retina_sample_weights_image_overlay by sb_sample_weights_image_overlay
- sb_retina_samples_create by sb_samples_create
- sb_retina_samples_get by sb_samples_get
- sb_retina_samples_destroy by sb_samples_destroy
- sb_retina_samples_copy by sb_samples_copy
- sb_retina_samples_insert by sb_samples_insert
- sb_retina_samples_remove by sb_samples_remove
- sb_retina_samples_set by sb_samples_set
- sb_retina_sample_get_vertex by sb_sample_get_vertex
- sb_retina_image_load by sb_image_info_load
- sb_retina_image_destroy by sb_image_info_destroy
- sb_retina_image_save by sb_image_info_save
- sb_retina_image_add_sample by sb_image_info_add_sample
- sb_retina_image_reset by sb_image_info_reset
- sb_retina_image_get_classified by sb_image_info_get_classified
- sb_retina_image_set_classified by sb_image_info_set_classified
- sb_retina_image_get_type by sb_image_info_get_type
- sb_retina_image_set_note by sb_image_info_set_note
- sb_retina_image_get_name by sb_image_info_get_name
- sb_retina_image_remove_model by sb_image_info_remove_model
- sb_retina_image_rename_model by sb_image_info_rename_model
- sb_retina_image_set_note by sb_image_info_set_note
- sb_retina_image_set_note by sb_image_info_set_note
- SB_RETINA_PAR_MODELS_NUM has been renamed to SB_PAR_MODELS_NUM.
- SB_RETINA_SAMPLE_SCALE_MIN has been renamed to SB_SAMPLE_SCALE_MIN.
- SB_RETINA_SAMPLE_SCALE_MAX has been renamed to SB_SAMPLE_SCALE_MAX.
- SB_RETINA_PAR_PERTURBATIONS_NUM has been renamed to SB_PAR_PERTURBATIONS_NUM.
- SB_RETINA_VALUE_NOT_SET has been renamed to SB_VALUE_NOT_SET.
- SB_RETINA_TRUTH_UNDEFINED has been renamed to SB_TRUTH_UNDEFINED.
- SB_RETINA_TRUE_POSITIVE has been renamed to SB_TRUTH_TRUE_POSITIVE.
- SB_RETINA_TRUE_NEGATIVE has been renamed to SB_TRUTH_TRUE_NEGATIVE.
- SB_RETINA_FALSE_POSITIVE has been renamed to SB_TRUTH_FALSE_POSITIVE.
- SB_RETINA_FALSE_NEGATIVE has been renamed to SB_TRUTH_FALSE_NEGATIVE.
- SB_RETINA_OUT_OF_ROI has been renamed to SB_TRUTH_OUT_OF_ROI.
- SB_RETINA_MODEL_DISABLED has been renamed to SB_TRUTH_MODEL_DISABLED.
- SB_RETINA_SAMPLE_REQUIRED has been renamed to SB_SAMPLE_REQUIRED.
- SB_RETINA_SAMPLE_OPTIONAL has been renamed to SB_SAMPLE_OPTIONAL.
- SB_RETINA_OBJ_TEST has been renamed to SB_OBJ_TEST.
- SB_RETINA_OBJ_LEARNING has been renamed to SB_OBJ_LEARNING.
- SB_PAR_MODEL_NAME_LEN has been renamed to SB_PAR_STRING_LEN.
- sb_t_retina_par_perturbations has been renamed to sb_t_par_perturbations.
- sb_t_retina_par_perturbation has been renamed to sb_t_par_perturbation.
- sb_t_retina_sample_truth has been renamed to sb_t_truth.
- sb_t_retina_sample_classify_mode has been renamed to sb_t_sample_classify_mode.
- sb_t_retina_obj_type has been renamed to sb_t_sample_obj_type.
- sb_t_retina_sample_weights_image has been renamed to sb_t_sample_weights_image.
- sb_t_retina_sample has been renamed to sb_t_sample.
- sb_t_retina_samples has been renamed to sb_t_samples.
- sb_retina_sample_weights_image_overlay has been renamed to sb_sample_weights_image_overlay.
Release 1.4.0
(release date: 30 Aug 2018)
- New features
- SVL has been improved
- SVL execution time has been reduced in case there is more than one model
- Tutorial 8 have been added.
- Bug fix
- The evaluation of the weight of FN or TN samples with scale greater than 0 has been corrected.
- An incremental SVL did not consider correctly the changes of the samples.
- During SVL, it could happen that the callback sb_fp_retina_svl_progress was not called that several seconds.
- Management of images with extension with one or more uppercase characters has been corrected.
- The SVL could give the error "The function has been called with a parameter with a wrong value" when adding a model after an SVL.
- Now sb_retina_image_set_classified clears all the information set by SVL.
- Functions added
- Structure sb_t_retina_stat_model
- Field enabled has been added
- The following functions have been changed the prototype:
- structure sb_t_retina_sample
- field bit_mask has been removed
- structure sb_t_retina_svl_stat
- field num_obj_l has been renamed to num_img_l
- field num_obj_l_old has been renamed to num_img_l_old
- field num_obj has been renamed to num_img
- field num_obj_old has been renamed to num_img_old
- Define SB_RETINA_SCALE_GRANULARITY has been added
Release 1.3.3
(release date: 22 Jun 2018)
- Bug fix
- If the sample was almost as large as the image, the perturbations of rotation could give an error.
- An error has been fixed in the function that search the best features during SVL. The error could happen only in the case of multiple models and the first model was disabled.
Release 1.3.2.6
(release date: 21 Gen 2019)
- compiled for linux with -g option, in order to generates debug information to be used by GDB debugger
Release 1.3.2.5
(release date: 11 Jun 2018)
- Bug fix
- correct loading of project file with version less than 1.1.0.0
- compatibility of sb_retina_detection with project with version less than 1.1.0.0
- SVL: if user stops svl during the SB_RETINA_SVL_STEP_SEARCH_BEST_RECIPE, the next SVL doesn't work correctly
Release 1.3.2
(release date: 24 Apr 2018)
- New features
- Automatic reset of the SVL of a model in case:
- the features selected in the previous SVL are not more compatible with the format (BW, color) of the images in the data set for SVL
- in the features available there isn't some feature used by the previous SVL
- the features available when the last SVL was done are changed
- the optimization mode when the last SVL was done is changed
- The user can create the set of the features among which SVL will choose the best features.
- The user can force SVL to use a set of features
- The default number of threads used by sb_retina_detection has been set to 1
- The function sb_retina_get_res also exports occurrences with negative weight.
- The function sb_retina_get_res also exports, for each sample, the image of the weights.
- sb_t_retina_svl_par: default value of field free_memory_percentage, for windows os has been changed to 10%
- Bug fix
- If an incremental SVL was made and there was an FN, than the goodness remained at -SB_RETINA_VALUE_NOT_SET and consequently the statistics of the samples (TP, FP, FN) were no longer exported in the SVL results.
- If a model has a perturbation which does nothing the SVL gives exception.
- sb_t_retina_sample: field user_data wasn't copied correctly internally
- In the results of the svl it could happen that the first sample TN did not have the weight equal to the negated of the goodness.
- Function sb_retina_get_res
- parameter details has been added
- New errors code added:
- SB_ERR_NO_FEATURES_AVAILABLE
- SB_ERR_NO_POINT_FOUND
- Structures eliminated
- sb_t_retina_svl_cls_type
- sb_t_retina_svl_feature_type
- Functions eliminated
- sb_retina_svl_cls_type_format
- sb_retina_svl_feature_type_format
- sb_retina_sample_check
- Functions added
- sb_retina_feature_description
- sb_file_extract_folder
- sb_retina_sample_weights_image_overlay
- sb_retina_image_rename_model
- Defines eliminated:
- SB_RETINA_PAR_FEATURES_NUM
- New defines added:
- SB_RETINA_CLS_0
- SB_RETINA_CLS_1
- SB_RETINA_FEATURE_0A
- SB_RETINA_FEATURE_0B
- SB_RETINA_FEATURE_2A
- SB_RETINA_FEATURE_2B
- SB_RETINA_FEATURE_2C
- SB_RETINA_FEATURE_3A
- SB_RETINA_FEATURES
- Structure sb_t_retina_par_model
- field num_occurrences has been added
- Structure sb_t_retina_svl_par
- field features has been added
- Structure sb_t_retina_svl_stat
- field cls_type has been removed
- field feature_type has been removed
- field classificator has been added
- field features has been added
- field features_available has been added
- field reset has been added
- field optimization_mode has been added
- field optimization_effectiveness has been added
- Structure sb_t_retina_sample
- field vertex_warp has been added
- field weights_image has been added
- Structure sb_t_retina_samples
- field n_sample has been renamed to size
- Structure sb_t_res
- field sample and nsample replaced by field samples of type sb_t_samples
- Structure sb_t_samples
- field n_sample renamed to size
- structure sb_t_retina_stat_model
- fields tp_weight_min and tp_weight_max have been added
- enum sb_t_retina_svl_stop_reason
- value SB_RETINA_SVL_STOP_MEMORY has been added
- value SB_RETINA_SVL_STOP_RESET_REQUEST has been added
- enum sb_t_svl_par_optimization_mode:
- SB_SVL_PAR_OPTIMIZATION_USE_SELECTED has been added
- enum sb_t_svl_running_step:
- SB_SVL_STEP_FINALIZATION has been added
Release 1.3.1
(release date: 01 Feb 2018)
- New features
- You can enable and disable separately each model of a project
- A model can has a different classifcator and features from the other one
- Classifier and features type used for each model are exported in SVL results.
- sb_retina_detect has been optimized both using openmp and algoritmic tecnique.
- TIFF image format management.
The following compression methods are implemented:
- JPEG image format management.
- Bug fix
- The cls type found by SVL wasn't save in the project file
- If cls 1 has been selected by SVL all the samples are marked as unused by SVL.
- Define SB_INIT_ONLY_SB_LICENSE_KEY has been added.
- SB_RETINA_SAMPLE_SCALE_MAX has been increased from 10 to 32
- SB_RETINA_SAMPLE_MIN_SCALE has been renamed to SB_RETINA_SAMPLE_SCALE_MIN.
- SB_RETINA_SAMPLE_MAX_SCALE has been renamed to SB_RETINA_SAMPLE_SCALE_MAX.
- SB_RETINA_SVL_PAR_OPTIMIZATION_GOODNESS has been renamed to SB_RETINA_SVL_PAR_OPTIMIZATION_TIME_SLOW.
- SB_RETINA_SVL_PAR_OPTIMIZATION_TIME has been renamed to SB_RETINA_SVL_PAR_OPTIMIZATION_TIME_MEDIUM.
- SB_RETINA_SVL_PAR_OPTIMIZATION_TIME_FAST has been added.
- "tif;tiff;jpg;jpeg" was added to the define SB_IMAGE_FILE_EXTENSIONS
- SB_RETINA_MODEL_DISABLED has been added to enum sb_t_retina_sample_truth
- Structure sb_t_retina_par
- field optimization_mode has been added
- Structure sb_t_retina_par_model
- field enabled has been added
- Structure sb_t_retina_svl_stat
- field mod_disabled has been added
- field enabled has been added
- Structure sb_t_retina_svl_res_image
- field mod_disabled has been added
- Structure sb_t_retina_res
- field mod_disabled has been added
- field err has been added
- field is_valid has been added
- Structure sb_t_retina_stat_model
- field tn has been added
- field mod_disabled has been added
- Structure sb_t_retina_stat
- field cnt_images has been renamed to elaborated.
- field time_us_total has been renamed to time_us.
- field tn has been added
- field mod_disabled has been added
- Structure sb_t_retina_svl_err
- field num_pos has been renamed to num_samples
- The following fields has beed removed from sb_t_retina_sample structure:
- model_index_gt
- model_name_gt
- sample_index
- ground_truth_dist
- sb_retina_detection: the field samples became const.
- Field running_step has been added to structure sb_t_retina_svl_res.
- New enums added:
- sb_t_retina_svl_running_step
- sb_t_retina_svl_cls_type
- sb_t_retina_svl_feature_type
- New functions added: -sb_retina_svl_par_optimization_mode_format
- sb_retina_svl_running_step_format
- sb_retina_svl_cls_type_format
- sb_retina_svl_feature_type_format
- sb_retina_par_optimization_mode_format
- sb_retina_image_load
- sb_retina_image_destroy
- sb_retina_image_save
- sb_retina_image_remove_model
- sb_retina_image_add_sample
- sb_retina_image_get_name
- sb_retina_samples_create
- The following functions have been replaced:
- sb_roi_save by sb_roi_set
- sb_roi_load by sb_roi_get
- sb_retina_samples_load by sb_retina_samples_get
- sb_retina_sample_add by sb_retina_image_add_sample
- sb_retina_samples_reset by sb_retina_image_reset
- sb_retina_svl_invalidate by sb_retina_invalidate
- sb_retina_svl_trained by sb_retina_trained
- sb_retina_project_set_note by sb_retina_set_note
- sb_retina_project_get_note by sb_retina_get_note
- The following functions have been changed the prototype:
- sb_retina_image_add_sample
- sb_retina_image_get_classified
- sb_retina_image_set_classified
- sb_retina_image_get_type
- sb_retina_image_set_note
- sb_retina_image_get_note
Release 1.3.0
(release date: 11 Oct 2017)
- New features
- SVL improvement
- A new classifier has been added
- New feature for color detection
- Multi-feature management
- PNG image format management
- Now is possible to invalidate a single model
- The structure of ROI has been set visible.
- "png" was added to the define SB_IMAGE_FILE_EXTENSIONS
- Fix an error in function sb_roi_load.
- Memory leak fix if version of .rtn file was different from the version of library
- The following functions have been removed:
- sb_roi_set_bit_mask
- sb_roi_get_ptr
- sb_roi_get_size
- sb_roi_set_color
- sb_roi_get_color
- The following functions have been added:
- sb_folder_load
- sb_folder_destroy
- sb_folder_erase
- sb_folder_create
- sb_folder_remove
- sb_folder_exist
- sb_file_extract_name
- sb_retina_reset_stat
- sb_retina_get_stat
- sb_retina_destroy_stat
- sb_retina_copy_res
- sb_version
- sb_roi_create_header
- sb_roi_copy
- sb_roi_compress
- sb_roi_decompress
- Function sb_roi_set_ptr has been renamed to sb_roi_set_data
- Structure sb_t_retina_stat has been added.
- Structure sb_t_rgba has been added.
- Define SB_RETINA_VALUE_NOT_SET has been added
- Type of the parameter data of the function sb_image_set_data has been changed from void* to unsigned char**
- In the structure sb_t_retina_svl_res field num_img_unclassified has been renamed to num_img_test and field num_img_elab has been renamed to num_img_svl.
- Prototype of functions sb_image_create and sb_image_create_header have been changed.
- Function sb_retina_load: you cannot longer pass the NULL value for project_file parameter.
- sb_retina_svl_invalidate has been changed: the model_name parameter has been added.
- sb_retina_svl_trained has been changed: the model_name parameter has been added.
- The following error codes have been added:
- SB_ERR_IMAGE_DECODE
- SB_ERR_IMAGE_ENCODE
Release 1.2.7
(release date: 30 Jun 2017)
- Fix an SVL internal error.
- The True Negative samples near a sample SB_SAMPLE_OPTIONAL will no longer be added in the TN list of SVL results.
Release 1.2.6
(release date: 27 Jun 2017)
- Fix a roi management error in the SVL procedure
Release 1.2.5
(release date: 05 Jun 2017)
- Eliminated the use of std::string
Release 1.2.4
(release date: 25 May 2017)
- New features:
- the ROI can be saved/load in the RTN file referred to acquired image
- SB_SVL_PAR_OPTIMIZATION_AUTO has been renamed to SB_SVL_PAR_OPTIMIZATION_GOODNESS
- Define SB_IMAGE_EXTENSIONS has been added.
- Structure sb_t_svl_par: size of field image_ext has been imcreased from 16 to 64 bytes.
- Structure sb_t_bgra has been added.
- Function sb_roi_set_color has been added.
- Function sb_roi_get_color has been added.
- Function sb_trace has been added.
- Structure sb_t_retina_par: field num_threads has been added
- Prototipe of function sb_roi_load has been changed.
Release 1.2.3
(release date: 05 May 2017)
- New features:
- Sentinel key management has been added.
- SVL works considering the optimization mode.
- "scaler" has been added in order to find object with different scale factor.
- sb_roi_get_ptr: output parameter width_step has been added.
- Error code SB_ERR_SENTINEL has been added.
- Error code SB_ERR_LICENSE_FILE_NULL has been renamed to SB_ERR_LICENSE_NOT_FOUND.
- Define SB_INIT_ONLY_HW_KEY has been added.
- Define SB_INIT_NO_KEY has been added.
- Enum sb_t_license_module_status: SB_LICENSE_MODULE_STATUS_WAIT_SERVER has been eliminated.
- struct sb_t_svl_res:
- field iterations has been removed.
- field best_iteration has been removed.
- field time_ms_last_improvement has been added.
- struct sb_t_svl_par:
- field optimization_mode has been added.
- struct sb_t_retina_par:
- fields levels, min_scale, max_scale have been removed.
- struct sb_t_sample:
- field image_name contains the name of the file of the image with extension but without path.
- SB_RETINA_PAR_MIN_SCALE has been renamed to SB_RETINA_SAMPLE_MIN_SCALE.
- SB_RETINA_PAR_MAX_SCALE has been renamed to SB_RETINA_SAMPLE_MAX_SCALE.
- SB_RETINA_PAR_SCALE_LEVELS_NUM has been eliminated.
- Enum sb_t_retina_reset_mode has been removed.
- Function sb_retina_project_reset: parameter mode has been removed.
- Function sb_retina_samples_reset: parameter mode has been removed.
- struct sb_t_sample:
- field uuid has been added.
- field scale_index has been removed.
- The following functions have been added
- sb_retina_sample_get_vertex
- sb_get_uuid
- sb_roi_evaluate_bounding_box
- sb_retina_sample_check
- sb_image_copy_rect
- sb_image_flip
- sb_image_rotate
- sb_image_resize
- sb_image_rotate_roi
- Parameter msg has been removed from the callback prototype sb_fp_svl_progress.
- Function sb_retina_res_destroy has been renamed to sb_destroy_res.
Release 1.2.2
(release date: 28 Feb 2017)
- New features: the function sb_retina_svl_load loads the results of the previous executions of SVL. You can use the function sb_svl_get_res to get it.
- Bug fix If more models could be that the SVL did not stop by itself.
- Bug fix If the first sample is optional a complete SVL returns the error SB_ERR_SAMPLE_NUMBER.
- Bug fix sb_retina_detection wrong management of the samples coordinates in case of warping.
- Added function sb_retina_svl_reset.
- Added function sb_retina_project_get_version.
- struct sb_t_retina_svl_par:
- field incremental has been removed.
- field images_max_size has been removed.
- field free_memory_percentage has been added.
- struct sb_t_retina_svl_res:
- field incremental has been removed.
- field save_res_enabled has been removed.
- struct sb_t_retina_svl_stat: field obj_size has been added.
- struct sb_t_info:
- field malloc_size has been added.
- field malloc_size_max has been added.
Release 1.2.1
(release date: 14 feb 2017)
- Renamed from SB_RETINA_OUT_OF_MASK to SB_RETINA_OUT_OF_ROI.
- Added function sb_retina_sample_format_truth.
- The execution time of SVL has been optimized in the case there were wrong samples.
- The execution time of detection has been optimized.
- sb_retina_image_set_note: the error code in case the file name is empty has been corrected.
- sb_retina_image_get_note: the error code in case the file name is empty has been corrected.
- The numbering of errors code has been changed.
- The following error codes have been added:
- SB_ERR_SVL_WAS_NOT_DONE
- SB_ERR_SVL_WRONG
- The following error codes have been renamed:
- SB_ERR_OCCURRENCE_NOT_FOUND -> SB_ERR_SAMPLE_NOT_FOUND
- SB_RETINA_SAMPLE_MANDATORY -> SB_RETINA_SAMPLE_REQUIRED
- SB_ERR_SAMPLES_DISTANCE -> SB_ERR_SAMPLE_DISTANCE
- SB_ERR_RCF_NAME_EMPTY -> SB_ERR_RPF_NAME_EMPTY
- SB_ERR_WRONG_SAMPLE -> SB_ERR_SAMPLE_WRONG
- SB_ERR_WRONG_STRUCT_HEADER_CODE -> SB_ERR_STRUCT_HEADER_WRONG_CODE
- SB_ERR_WRONG_STRUCT_HEADER_SIZE -> SB_ERR_STRUCT_HEADER_WRONG_SIZE
- SB_ERR_WRONG_STRUCT_HEADER_VERSION -> SB_ERR_STRUCT_HEADER_WRONG_VERSION
- SB_ERR_INVALID_IP has been eliminated and substituted with SB_ERR_SOCKET_INVALID_IP.
- SB_ERR_WRONG_TRUTH has been eliminated and substituted with SB_ERR_WRONG_PARAMETER.
- Bug fix: the number of sample in the list of TN in the SVL result was 79 instead of 80.
Release 1.2.0
(release date: 03 feb 2017) The first release.
Known but unsolved bugs
- Bug:
- SB-GUI: with windows 10 virtual machines it can happen that the graphics are overturned