24 3D Object Classification, Visual Search …
365
P
k.3
rr =
x
|x
= R z × R y × R x × x, x ∈ P
k,3
s
,
R x =
⎛
⎝
1 0
0
0 sin φ 1 − sin φ 1
0 sin φ 1 cos φ 1
⎞
⎠ , R y =
⎛
⎝
cos φ 2 0 sin φ 2
0
1 0
− sin φ 2 0 cos φ 2
⎞
⎠ ,
R z =
⎛
⎝
cos φ 3 − sin φ 3 0
sin φ 3 cos φ 3 0
0
0
1
⎞
⎠ ,
where R x , R y , R z are the rotation matrices around the main axes, φ i is the independent
random variables with normal distribution φ i ∼ N
0, σ
2
. During network training,
the following parameters were set: σ = 0.06, if φ i > 0.18, then it fixed equal to
φ i = 0.18, if φ i < −0.18, then it fixed equal to φ i = −0.18, i = 1, 2, 3.
Random translation. This operation consists of randomly translating each
polygonal model in the training dataset in parallel:
P
k.3
j
=
x
|x
= x + c, x ∈ P
k,3
rr
,
where c = (ε 1 , ε 2 , ε 3 )
T
, ε i ∼ U (a, b), i = 1, 2, 3 are the independent random
variables with a uniform distribution on [a, b]. During network training, the following
parameters were set: a = −0.1, b = 0.1. A fixed vector was generated for each
example during the training process.
Model fitting. Training the model on the NVIDIA RTX 2080Ti GPU took approximately 7 h. 250 epochs were completed for training the main model and 100 epochs
for training the classifier. LDGCNN is a model that needs to be trained in two stages:
training the main part to extract features and training the classifier with a fixed model
for features. The implementation of LDGCNN, which is available on GitHub [14],
was used as a basis. The average class accuracy [15] value on the test set is equal
to 0.900255. An accuracy evaluating graph during training of the feature extraction
part is shown in Fig. 24.6.
24.5 Ray Casting Descriptive Representation of 3D Models
To make it easier to work with 3D model after classification, the actual scanned
object can be replaced with 3D model from the database of ready-made models (in
this sense, we will assume the procedure of 3D scene auto-completion). Of course,
there may not be an exact copy of the scanned model, but if the model from the
database is close enough in terms of surface shape and class, then working with such
a model can be much more convenient.
There are different ways to organize the search procedure for different types of
data. One of such approaches is the search based on a descriptive representation of
Précédent

- 362/374

Suivant