Deepomatic has filed a patent for a new feature of its Deepomatic Studio platform that lets you describe a visual universe and to make it evolve over time with unrivalled flexibility and simplicity.
So far, you have organised your image sets by project on the Deepomatic platform. For each of these projects, you had to define the concepts you wanted to recognise, and you could then train neural networks to teach a model the automatic classification or detection of these concepts.
However, in order to build a solution that addresses your business problem, it is systematically necessary to combine several neural networks according to specific business logic rules. Each of these neural networks corresponds to a project on the platform, and all the projects you have created were previously independent of each other.
Let’s take the example of a solution enabling the validation of a control point for a technician performing a task in the field. The solution consists of two steps:
- the first step is the validation that the technician sends the requested photo.
- the second step corresponds to the detection of specific objects on this image. It is then possible to count the number of objects, which makes it possible to validate or not the control point.
To build this solution, it is necessary to create two projects, one with all the images sorted by typology, and the other with only the images of a certain type. The first project is a classification project, the second project is a detection project in which the annotation work consists of surrounding each object with a bounding box. However, there is no link between the images of the two projects, even if the images of the second project are also in the first project.
The new version of the Deepomatic platform introduces the notion of view which allows to define several recognition tasks within the same project and using the same images. Each view is defined by a set of concepts as you have done up to now in a project.
views can also be linked one after the other. This is how we define child view, parent view and root view.
- a root view covers all the images in a project and it is possible to create several of them within the same project.
- a child view is defined in relation to an existing view and corresponds to a filter on the concepts of the parent view.
To carry on with the example above, it is now possible to create a single project with all the images and to define two views :
- a classification root view
- a child view of the root view, which will be a detection view and will only focus on images corresponding to the category of interest.
This new way of organizing your data allows a tight synchronization between your views. Let’s imagine that an annotation error has been made in the classification root view, an image having been incorrectly classified as being in the category of interest. This image is naturally found in the child view. When you notice this annotation error, correcting it in the root view, and therefore changing the category, will automatically remove it from the child view. Where you would have had great difficulty finding the image using independent projects, you no longer have to worry about the synchronisation and overall consistency of your datasets!
The Deepomatic platform thus allows you to build a hierarchical representation of your visual universe, and to progressively complexify this representation as you need to add levels of detail to your solution. Don’t try to create an extremely rich and complex tree structure from the outset, just get started and the platform will natively allow you to add new views to create an increasingly finer and more powerful solution.
This is a decisive step in the evolution of the platform, as it allows you to build solutions to highly complex problems. Over the life of your solution, where you could get lost in the multiplicity of projects created, you can now organise sets of very important images in a coherent and structured way.