Image processing method
The present invention proposes a technique for selectively recovering features of an original surface (e.g. boundary) representation after the original surface representation has been converted to a digitised image, digitally altered, and a new surface representation generated from the digitally altered digitised image. In particular, this technique involves tracking the portions of the digitised image that are digitally altered and/or not digitally altered, and selectively recovering only the portions of the original surface representation that have not been digitally altered. In this way, the original surface representation can be effectively used as a template to recover accuracy and reintroduce detailed features that would otherwise be lost when converting into image space, but any alterations or manipulations intentionally introduced in the image space are maintained.
1 . A method of manipulating a virtual representation of a three-dimensional object, the method comprising:
obtaining a master surface representation of the object;
sampling a bounding volume containing the master surface representation to generate a digitised three-dimensional representation of the object, wherein the digitised three-dimensional representation of the object comprises a voxelized model of the object;
modifying the digitised three-dimensional representation;
generating a slave surface representation of the object from the modified digitised three-dimensional representation; and
adapting the slave surface representation by:
generating a reference slave surface representation from the unmodified digitised three-dimensional representation;
comparing the slave surface representation with the reference slave surface representation to identify one or more points in the slave surface representation that are associated with unchanged voxels in the modified digitised three-dimensional representation; and
transferring each of the identified one or more points in the slave surface representation to a respective location on the master surface representation.
2 . The method of claim 1 , further comprising:
flagging points in the slave surface representation that do not have a corresponding point in the reference slave surface representation; and
maintaining the location of the flagged points in the slave surface representation.
3 . A method of manipulating a virtual representation of a three-dimensional object, the method comprising:
obtaining a master surface representation of the object;
sampling a bounding volume containing the master surface representation to generate a digitised three-dimensional representation of the object, wherein the digitised three-dimensional representation of the object comprises a voxelized model of the object;
modifying the digitised three-dimensional representation;
tracking voxels that are unmodified in the digitised three-dimensional representation as it is modified;
generating a slave surface representation of the object from the modified digitised three-dimensional representation; and
adapting the slave surface representation by:
flagging points in the slave surface representation that are associated with the tracked unmodified voxels; and
transferring each of the flagged points in the slave surface representation to a respective location on the master surface representation.
4 . The method of claim 3 , wherein tracking voxels that are unmodified in the digitised three-dimensional representation comprises comparing the digitised three-dimensional representation before and after modification.
5 . The method of claim 3 , wherein tracking voxels that are unmodified in the digitised three-dimensional representation comprises generating a log that tracks changes to each voxel in the digitised three-dimensional representation.
6 . The method of claim 1 , wherein transferring each of the identified one or more points in the slave surface representation comprises replacing the identified one or more points with corresponding points of the master surface representation.
7 . The method of claim 1 , wherein transferring each of the identified one or more points in the slave surface representation comprises moving the identified one or more points to a new location on the master surface representation.
8 . The method of claim 1 , further comprising generating a plurality of new points in the slave surface representation to increase the point density in regions corresponding to the identified points in the slave surface representation that are associated with unchanged voxels.
9 . The method of claim 1 , wherein obtaining the master surface representation comprises:
scanning a physical three-dimensional object to obtain point cloud data; and
converting the point cloud data into the master surface representation.
10 . The method of claim 1 , wherein the master surface representation comprises a mesh of node points connected by contiguous polygons.
11 . The method of claim 1 , wherein the slave surface representation comprises a mesh of node points connected by contiguous polygons, and the points in the slave surface representation correspond to the node points of the mesh.
12 . The method of claim 1 , wherein the step of generating a slave surface representation from the modified three-dimensional representation is performed using the multi-part marching cube algorithm.
13 . The method of claim 1 , wherein the step of generating a slave surface representation from the modified three-dimensional representation comprises generating a volume mesh of the modified digitised three-dimensional representation.
14 . The method of claim 1 , wherein modifying the digitised three-dimensional representation comprises changing one or more voxel values.
15 . The method of claim 1 , wherein modifying the digitised three-dimensional representation comprises segmenting the digitised three-dimensional representation by classifying each of the voxels.
16 . The method of claim 15 , wherein classifying each voxel is performed using a convolutional neural network.
17 . The method of claim 1 , wherein modifying the digitised three-dimensional representation comprises introducing a new sub-structure into the digitised three-dimensional representation.
18 . The method of claim 1 , wherein the object is a dental impression.
19 . A computer program product comprising a non-transitory computer-readable storage medium having software instructions stored thereon, the software instructions being executable by a computer to perform the method of claim 1 .
20 . A computer program product comprising a non-transitory computer-readable storage medium having software instructions stored thereon, the software instructions being executable by a computer to perform the method of claim 3 .