diff --git a/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/configs/.keep b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/configs/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/configs/rank_table_8p.json b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/configs/rank_table_8p.json new file mode 100644 index 0000000000000000000000000000000000000000..cd9041f3efa3eb1a9e1959ac758b60e2313778a0 --- /dev/null +++ b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/configs/rank_table_8p.json @@ -0,0 +1,52 @@ +{ + "server_count":"1", + "server_list":[ + { + "server_id":"10.147.179.27", + "device":[ + { + "device_id":"0", + "device_ip":"192.168.100.100", + "rank_id":"0" + }, + { + "device_id":"1", + "device_ip":"192.168.101.100", + "rank_id":"1" + }, + { + "device_id":"2", + "device_ip":"192.168.102.100", + "rank_id":"2" + }, + { + "device_id":"3", + "device_ip":"192.168.103.100", + "rank_id":"3" + }, + { + "device_id":"4", + "device_ip":"192.168.100.101", + "rank_id":"4" + }, + { + "device_id":"5", + "device_ip":"192.168.101.101", + "rank_id":"5" + }, + { + "device_id":"6", + "device_ip":"192.168.102.101", + "rank_id":"6" + }, + { + "device_id":"7", + "device_ip":"192.168.103.101", + "rank_id":"7" + } + ] + } + ], + "status":"completed", + "version":"1.0" +} \ No newline at end of file diff --git a/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/data_processing.py b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/data_processing.py index de97a6b8d3c067ba624c39877ccde31fb890f7e4..34f4cd88ddf4ece4a193b0e864b0e5d9113d2e45 100644 --- a/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/data_processing.py +++ b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/data_processing.py @@ -108,7 +108,7 @@ def convert_images_to_clip(filename, clip_length=CLIP_LENGTH, crop_size=112, cha return clip # shape[clip_length, crop_size, crop_size, channel_num] -def get_batches(filename, num_classes, batch_index, video_indices, batch_size=10, crop_size=112, channel_num=3): +def get_batches(filename, num_classes, batch_index, video_indices, batch_size=10, rank_size=1, crop_size=112, channel_num=3 ): lines = open(filename, 'r') clips = [] labels = [] @@ -125,6 +125,6 @@ def get_batches(filename, num_classes, batch_index, video_indices, batch_size=10 oh_labels = np.zeros([len(labels), num_classes]).astype(np.int64) for i in range(len(labels)): oh_labels[i, labels[i]] = 1 - batch_index = batch_index + batch_size + batch_index = batch_index + batch_size*rank_size batch_data = {'clips': clips, 'labels': oh_labels} return batch_data, batch_index diff --git a/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/test/train_full_8p.sh b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/test/train_full_8p.sh new file mode 100644 index 0000000000000000000000000000000000000000..0643f7b4d7647fa97c76c0d7a90f8f31d853f3eb --- /dev/null +++ b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/test/train_full_8p.sh @@ -0,0 +1,188 @@ +#!/bin/bash + +#当前路径,不需要修改 +cur_path=`pwd`/../ + +#集合通信参数,不需要修改 + +export RANK_SIZE=8 +export RANK_TABLE_FILE=${cur_path}/configs/rank_table_8p.json +export JOB_ID=10087 +RANK_ID_START=0 + + +# 数据集路径,保持为空,不需要修改 +data_path='' +ckpt_path='' + +#设置默认日志级别,不需要修改 +export ASCEND_GLOBAL_LOG_LEVEL=3 +#export ASCEND_DEVICE_ID=3 + +#基础参数,需要模型审视修改 +#网络名称,同目录名称 +Network="C3D_ID2199_for_TensorFlow" +#训练epoch +train_epochs=40 +#训练batch_size +batch_size=10 +#训练step +train_steps=`expr 1281167 / ${batch_size}` +#学习率 +learning_rate=0.495*8 + +#TF2.X独有,需要模型审视修改 +export NPU_LOOP_SIZE=${train_steps} + +#维测参数,precision_mode需要模型审视修改 +precision_mode="allow_mix_precision" +#维持参数,以下不需要修改 +over_dump=False +data_dump_flag=False +data_dump_step="10" +profiling=False + +# 帮助信息,不需要修改 +if [[ $1 == --help || $1 == -h ]];then + echo"usage:./train_performance_1P.sh " + echo " " + echo "parameter explain: + --precision_mode precision mode(allow_fp32_to_fp16/force_fp16/must_keep_origin_dtype/allow_mix_precision) + --over_dump if or not over detection, default is False + --data_dump_flag data dump flag, default is False + --data_dump_step data dump step, default is 10 + --profiling if or not profiling for performance debug, default is False + --data_path source data of training + -h/--help show help message + " + exit 1 +fi + +#参数校验,不需要修改 +for para in $* +do + if [[ $para == --precision_mode* ]];then + precision_mode=`echo ${para#*=}` + elif [[ $para == --over_dump* ]];then + over_dump=`echo ${para#*=}` + over_dump_path=${cur_path}/test/output/overflow_dump + mkdir -p ${over_dump_path} + elif [[ $para == --data_dump_flag* ]];then + data_dump_flag=`echo ${para#*=}` + data_dump_path=${cur_path}/test/output/data_dump + mkdir -p ${data_dump_path} + elif [[ $para == --data_dump_step* ]];then + data_dump_step=`echo ${para#*=}` + elif [[ $para == --profiling* ]];then + profiling=`echo ${para#*=}` + profiling_dump_path=${cur_path}/test/output/profiling + mkdir -p ${profiling_dump_path} + elif [[ $para == --data_path* ]];then + data_path=`echo ${para#*=}` + + elif [[ $para == --ckpt_path* ]];then + ckpt_path=`echo ${para#*=}` + fi +done + +#校验是否传入data_path,不需要修改 +if [[ $data_path == "" ]];then + echo "[Error] para \"data_path\" must be confing" + exit 1 + +fi + +#训练开始时间,不需要修改 +start_time=$(date +%s) + +#进入训练脚本目录,需要模型审视修改 +cd $cur_path/ +for((RANK_ID=$RANK_ID_START;RANK_ID<$((RANK_SIZE+RANK_ID_START));RANK_ID++)); +do + #设置环境变量,不需要修改 + echo "Device ID: $ASCEND_DEVICE_ID" + export RANK_ID=$RANK_ID + export ASCEND_DEVICE_ID=$RANK_ID + ASCEND_DEVICE_ID=$RANK_ID + DEVICE_INDEX=$RANK_ID + export DEVICE_INDEX=${DEVICE_INDEX} + + + + #创建DeviceID输出目录,不需要修改 + if [ -d ${cur_path}/test/output/${ASCEND_DEVICE_ID} ];then + rm -rf ${cur_path}/test/output/${ASCEND_DEVICE_ID} + mkdir -p ${cur_path}/test/output/$ASCEND_DEVICE_ID/ckpt + else + mkdir -p ${cur_path}/test/output/$ASCEND_DEVICE_ID/ckpt + fi + + + + + # 绑核,不需要的绑核的模型删除,需要的模型审视修改 + let a=RANK_ID*12 + let b=RANK_ID+1 + let c=b*12-1 + + + #执行训练脚本,以下传参不需要修改,其他需要模型审视修改 + #--data_dir, --model_dir, --precision_mode, --over_dump, --over_dump_path,--data_dump_flag,--data_dump_step,--data_dump_path,--profiling,--profiling_dump_path + #sed -i "s|"/home/test_user05/result"|"${cur_path}/test"|g" run_npu.sh + #sed -i "s|"/home/test_user05"|"${data_path}"|g" run_npu.sh + sed -i "s|"code_dir"|"${ckpt_path}"|g" data_processing.py + + nohup python3 train_c3d.py \ + --result=${cur_path}/test/ \ + --batch_size=${batch_size} \ + --data_dir=${data_path} > ${cur_path}test/output/${ASCEND_DEVICE_ID}/train_${ASCEND_DEVICE_ID}.log 2>&1 & + + #sed -i "s|"${data_path}"|"/home/test_user05"|g" run_npu.sh + #sed -i "s|"${cur_path}/test"|"/home/test_user05/result"|g" run_npu.sh + #sed -i "s|"${ckpt_path}"|"code_dir"|g" data_processing.py + +done +wait + +#训练结束时间,不需要修改 +end_time=$(date +%s) +e2e_time=$(( $end_time - $start_time )) + +#结果打印,不需要修改 +echo "------------------ Final result ------------------" +#输出性能FPS,需要模型审视修改 +TrainingTime=`grep "Train Time" $cur_path/test/output/${ASCEND_DEVICE_ID}/train_${ASCEND_DEVICE_ID}.log |awk 'END {print}' |awk '{print $5}'` + +#输出训练精度,需要模型审视修改 +train_acc=`grep "Test accuracy" $cur_path/test/output/${ASCEND_DEVICE_ID}/train_${ASCEND_DEVICE_ID}.log|awk '{print $4}'` +#打印,不需要修改 +echo "Final Train Accuracy : ${train_acc}" +echo "E2E Training Duration sec : $e2e_time" + +#性能看护结果汇总 +#训练用例信息,不需要修改 +BatchSize=${batch_size} +DeviceType=`uname -m` +CaseName=${Network}_bs${BatchSize}_${RANK_SIZE}'p'_'acc' + +##获取性能数据,不需要修改 +#吞吐量 +ActualFPS=`awk 'BEGIN{printf "%.2f\n", 10/'${TrainingTime}'}'` + +#从train_$ASCEND_DEVICE_ID.log提取Loss到train_${CaseName}_loss.txt中,需要根据模型审视 +grep 'Average loss is:' $cur_path/test/output/$ASCEND_DEVICE_ID/train_$ASCEND_DEVICE_ID.log|awk '{print $6}' > $cur_path/test/output/$ASCEND_DEVICE_ID/train_${CaseName}_loss.txt + +#最后一个迭代loss值,不需要修改 +ActualLoss=`awk 'END {print}' $cur_path/test/output/$ASCEND_DEVICE_ID/train_${CaseName}_loss.txt` + +#关键信息打印到${CaseName}.log中,不需要修改 +echo "Network = ${Network}" > $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "RankSize = ${RANK_SIZE}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "BatchSize = ${BatchSize}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "DeviceType = ${DeviceType}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "CaseName = ${CaseName}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "ActualFPS = ${ActualFPS}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "TrainingTime = ${TrainingTime}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "ActualLoss = ${ActualLoss}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "TrainAccuracy = ${train_acc}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "E2ETrainingTime = ${e2e_time}" >> $cur_path/test/output/$ASCEND_DEVICE_ID/${CaseName}.log diff --git a/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/train_c3d.py b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/train_c3d.py index f6085bccc4340907d346fa64c51cb4717574979c..fbf3f324ad460552a7fdce0d688b0f3e6968615e 100644 --- a/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/train_c3d.py +++ b/TensorFlow/contrib/cv/C3D_ID2199_for_TensorFlow/train_c3d.py @@ -51,7 +51,7 @@ TRAIN_CHECK_POINT = FLAGS.train_model_url TRAIN_LIST_PATH = FLAGS.data_dir + '/train.list' TEST_LIST_PATH = FLAGS.data_dir + '/test.list' BATCH_SIZE = FLAGS.batch_size -NUM_CLASSES = 101 +NUM_CLASSES = 102 CROP_SZIE = 112 CHANNEL_NUM = 3 CLIP_LENGTH = 16 @@ -63,6 +63,10 @@ MOVING_AV_DECAY = 0.9999 # Get shuffle index train_video_indices, validation_video_indices = data_processing.get_video_indices(TRAIN_LIST_PATH) +RANK_SIZE = int(os.getenv('RANK_SIZE')) +rank_id = int(os.getenv('DEVICE_INDEX')) + + with tf.Graph().as_default(): batch_clips = tf.placeholder(tf.float32, [BATCH_SIZE, CLIP_LENGTH, CROP_SZIE, CROP_SZIE, CHANNEL_NUM], name='X') batch_labels = tf.placeholder(tf.int32, [BATCH_SIZE, NUM_CLASSES], name='Y') @@ -79,29 +83,44 @@ with tf.Graph().as_default(): # global_step = tf.Variable(0, name='global_step', trainable=False) # decay_step = EPOCHS_PER_LR_DECAY * len(train_video_indices) // BATCH_SIZE learning_rate = 1e-4 - optimizer = tf.train.AdamOptimizer(learning_rate).minimize(loss) # , global_step=global_step) + if int(RANK_SIZE) > 1: + optimizer = tf.train.AdamOptimizer(learning_rate) # .minimize(loss) # , global_step=global_step) + optimizer = npu_distributed_optimizer_wrapper(optimizer).minimize(loss) + else: + optimizer = tf.train.AdamOptimizer(learning_rate).minimize(loss) # , global_step=global_step) saver = tf.train.Saver() summary_op = tf.summary.merge_all() - config = npu_config(FLAGS) + + config = tf.ConfigProto() + custom_op = config.graph_options.rewrite_options.custom_optimizers.add() + custom_op.name = "NpuOptimizer" + custom_op.parameter_map["hcom_parallel"].b = True + config.graph_options.rewrite_options.remapping = RewriterConfig.OFF # 必须显式关闭 + config.graph_options.rewrite_options.memory_optimization = RewriterConfig.OFF # 必须显式关闭 + with tf.Session(config=config) as sess: train_summary_writer = tf.summary.FileWriter(TRAIN_LOG_DIR, sess.graph) sess.run(tf.global_variables_initializer()) sess.run(tf.local_variables_initializer()) + if int(RANK_SIZE) > 1: + input = tf.trainable_variables() + bcast_global_variables_op = hccl_ops.broadcast(input, 0) + sess.run(bcast_global_variables_op) step = 0 for epoch in range(EPOCH_NUM): accuracy_epoch = 0 loss_epoch = 0 - batch_index = 0 - for i in range(len(train_video_indices) // BATCH_SIZE): + batch_index = 0+rank_id*BATCH_SIZE + for i in range(len(train_video_indices) // (BATCH_SIZE*RANK_SIZE)): step += 1 batch_data, batch_index = data_processing.get_batches(TRAIN_LIST_PATH, NUM_CLASSES, batch_index, - train_video_indices, BATCH_SIZE) + train_video_indices, BATCH_SIZE, RANK_SIZE) train_time = time.time() _, loss_out, accuracy_out, summary = sess.run([optimizer, loss, accuracy, summary_op], - feed_dict={batch_clips: batch_data['clips'], - batch_labels: batch_data['labels'], - keep_prob: 0.5}) + feed_dict={batch_clips: batch_data['clips'], + batch_labels: batch_data['labels'], + keep_prob: 0.5}) loss_epoch += loss_out accuracy_epoch += accuracy_out print("%d Train Time = %.3f" % (step, time.time() - train_time)) @@ -110,55 +129,61 @@ with tf.Graph().as_default(): # print('Epoch %d, Batch %d: Loss is %.5f; Accuracy is %.5f' % (epoch + 1, i, loss_out, accuracy_out)) train_summary_writer.add_summary(summary, step) print('Epoch %d: Average loss is: %.5f ; Average accuracy is: %.5f' % ( - epoch + 1, loss_epoch / (len(train_video_indices) // BATCH_SIZE), - accuracy_epoch / (len(train_video_indices) // BATCH_SIZE))) + epoch + 1, loss_epoch / (len(train_video_indices) // (BATCH_SIZE*RANK_SIZE)), + accuracy_epoch / (len(train_video_indices) // (BATCH_SIZE*RANK_SIZE)))) accuracy_epoch = 0 loss_epoch = 0 - batch_index = 0 - for i in range(len(validation_video_indices) // BATCH_SIZE): + # batch_index = 0+rank_id*BATCH_SIZE + batch_index=0 + for i in range(len(validation_video_indices) // (BATCH_SIZE)): batch_data, batch_index = data_processing.get_batches(TRAIN_LIST_PATH, NUM_CLASSES, batch_index, - validation_video_indices, BATCH_SIZE) + validation_video_indices, BATCH_SIZE, 1) loss_out, accuracy_out = sess.run([loss, accuracy], - feed_dict={batch_clips: batch_data['clips'], - batch_labels: batch_data['labels'], - keep_prob: 1.0}) + feed_dict={batch_clips: batch_data['clips'], + batch_labels: batch_data['labels'], + keep_prob: 1.0}) loss_epoch += loss_out accuracy_epoch += accuracy_out print('Validation loss is %.5f ; Accuracy is %.5f' % ( - loss_epoch / (len(validation_video_indices) // BATCH_SIZE), - accuracy_epoch / (len(validation_video_indices) // BATCH_SIZE))) + loss_epoch / (len(validation_video_indices) // (BATCH_SIZE)), + accuracy_epoch / (len(validation_video_indices) // (BATCH_SIZE)))) #print("%d Train Time = %.3f" % (epoch + 1, time.time() - train_time)) saver.save(sess, TRAIN_CHECK_POINT + '/train.ckpt', global_step=epoch) +if(rank_id==RANK_SIZE-1): + # test data + test_num = data_processing.get_test_num(TEST_LIST_PATH) + test_video_indices = range(test_num) -# test data -test_num = data_processing.get_test_num(TEST_LIST_PATH) -test_video_indices = range(test_num) + with tf.Graph().as_default(): + batch_clips = tf.placeholder(tf.float32, [BATCH_SIZE, CLIP_LENGTH, CROP_SZIE, CROP_SZIE, CHANNEL_NUM], name='X') + batch_labels = tf.placeholder(tf.int32, [BATCH_SIZE, NUM_CLASSES], name='Y') + keep_prob = tf.placeholder(tf.float32) + logits = C3D_model.C3D(batch_clips, NUM_CLASSES, keep_prob) + accuracy = tf.reduce_mean(tf.cast(tf.equal(tf.argmax(logits, 1), tf.argmax(batch_labels, 1)), np.float32)) -with tf.Graph().as_default(): - batch_clips = tf.placeholder(tf.float32, [BATCH_SIZE, CLIP_LENGTH, CROP_SZIE, CROP_SZIE, CHANNEL_NUM], name='X') - batch_labels = tf.placeholder(tf.int32, [BATCH_SIZE, NUM_CLASSES], name='Y') - keep_prob = tf.placeholder(tf.float32) - logits = C3D_model.C3D(batch_clips, NUM_CLASSES, keep_prob) - accuracy = tf.reduce_mean(tf.cast(tf.equal(tf.argmax(logits, 1), tf.argmax(batch_labels, 1)), np.float32)) + restorer = tf.train.Saver() + config = npu_config(FLAGS) + with tf.Session(config=config) as sess: + sess.run(tf.global_variables_initializer()) + sess.run(tf.local_variables_initializer()) + # if int(RANK_SIZE) > 1: + # input = tf.trainable_variables() + # bcast_global_variables_op = hccl_ops.broadcast(input, 0) + # sess.run(bcast_global_variables_op) + ckpt = tf.train.get_checkpoint_state(TRAIN_CHECK_POINT) + if ckpt: + restorer.restore(sess, ckpt.model_checkpoint_path) + accuracy_epoch = 0 + batch_index = 0 + # batch_index = 0+rank_id*BATCH_SIZE + for i in range(test_num // (BATCH_SIZE)): + batch_data, batch_index = data_processing.get_batches(TEST_LIST_PATH, NUM_CLASSES, batch_index, + test_video_indices, BATCH_SIZE, 1) + accuracy_out = sess.run(accuracy, feed_dict={batch_clips: batch_data['clips'], + batch_labels: batch_data['labels'], + keep_prob: 1.0}) + accuracy_epoch += accuracy_out - restorer = tf.train.Saver() - config = npu_config(FLAGS) - with tf.Session(config=config) as sess: - sess.run(tf.global_variables_initializer()) - sess.run(tf.local_variables_initializer()) - ckpt = tf.train.get_checkpoint_state(TRAIN_CHECK_POINT) - if ckpt: - restorer.restore(sess, ckpt.model_checkpoint_path) - accuracy_epoch = 0 - batch_index = 0 - for i in range(test_num // BATCH_SIZE): - batch_data, batch_index = data_processing.get_batches(TEST_LIST_PATH, NUM_CLASSES, batch_index, - test_video_indices, BATCH_SIZE) - accuracy_out = sess.run(accuracy, feed_dict={batch_clips: batch_data['clips'], - batch_labels: batch_data['labels'], - keep_prob: 1.0}) - accuracy_epoch += accuracy_out - - print('Test accuracy is %.5f' % (accuracy_epoch / (test_num // BATCH_SIZE))) + print('Test accuracy is %.5f' % (accuracy_epoch / (test_num // (BATCH_SIZE*1)))) diff --git a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/cfg.py b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/cfg.py index 862f8a95766c33d41a709069255d4e55e401f06f..cc68bb6736a80dea809780ae58229da32436ae9e 100644 --- a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/cfg.py +++ b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/cfg.py @@ -40,6 +40,7 @@ def make_config(FLAGS): custom_op.name = "NpuOptimizer" custom_op.parameter_map["use_off_line"].b = True custom_op.parameter_map["precision_mode"].s = tf.compat.as_bytes("allow_mix_precision") + custom_op.parameter_map["hcom_parallel"].b = True config.graph_options.rewrite_options.remapping = RewriterConfig.OFF ## Auto Tune diff --git a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/configs/.keep b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/configs/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/configs/rank_table_8p.json b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/configs/rank_table_8p.json new file mode 100644 index 0000000000000000000000000000000000000000..cd9041f3efa3eb1a9e1959ac758b60e2313778a0 --- /dev/null +++ b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/configs/rank_table_8p.json @@ -0,0 +1,52 @@ +{ + "server_count":"1", + "server_list":[ + { + "server_id":"10.147.179.27", + "device":[ + { + "device_id":"0", + "device_ip":"192.168.100.100", + "rank_id":"0" + }, + { + "device_id":"1", + "device_ip":"192.168.101.100", + "rank_id":"1" + }, + { + "device_id":"2", + "device_ip":"192.168.102.100", + "rank_id":"2" + }, + { + "device_id":"3", + "device_ip":"192.168.103.100", + "rank_id":"3" + }, + { + "device_id":"4", + "device_ip":"192.168.100.101", + "rank_id":"4" + }, + { + "device_id":"5", + "device_ip":"192.168.101.101", + "rank_id":"5" + }, + { + "device_id":"6", + "device_ip":"192.168.102.101", + "rank_id":"6" + }, + { + "device_id":"7", + "device_ip":"192.168.103.101", + "rank_id":"7" + } + ] + } + ], + "status":"completed", + "version":"1.0" +} \ No newline at end of file diff --git a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/model.py b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/model.py index d6d1d9079540ccb59d6a2f73ab0a8a2117241027..4e813d77f1869647ded1b3eb44d28fe69be3ffe7 100644 --- a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/model.py +++ b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/model.py @@ -127,9 +127,17 @@ class CGAN(object): self.g_vars = [var for var in t_vars if 'fusion_model' in var.name] print(self.g_vars) + RANK_SIZE = int(os.getenv('RANK_SIZE')) + with tf.name_scope('train_step'): - self.train_fusion_op = tf.train.AdamOptimizer(config.learning_rate).minimize(self.g_loss_total,var_list=self.g_vars) - self.train_discriminator_op=tf.train.AdamOptimizer(config.learning_rate).minimize(self.d_loss,var_list=self.d_vars) + if int(RANK_SIZE) > 1: + self.train_fusion_op = tf.train.AdamOptimizer(config.learning_rate) # .minimize(self.g_loss_total,var_list=self.g_vars) + self.train_fusion_op = npu_distributed_optimizer_wrapper(self.train_fusion_op).minimize(self.g_loss_total,var_list=self.g_vars) + self.train_discriminator_op=tf.train.AdamOptimizer(config.learning_rate) # .minimize(self.d_loss,var_list=self.d_vars) + self.train_discriminator_op=npu_distributed_optimizer_wrapper(self.train_discriminator_op).minimize(self.d_loss,var_list=self.d_vars) + else: + self.train_fusion_op = tf.train.AdamOptimizer(config.learning_rate).minimize(self.g_loss_total,var_list=self.g_vars) + self.train_discriminator_op = tf.train.AdamOptimizer(config.learning_rate).minimize(self.d_loss,var_list=self.d_vars) #将所有统计的量合起来 self.summary_op = tf.summary.merge_all() #生成日志文件 @@ -149,19 +157,30 @@ class CGAN(object): print("Training...") perf_list=[] fps_list=[] + RANK_SIZE = int(os.getenv('RANK_SIZE')) + rank_id = int(os.getenv('DEVICE_INDEX')) + if int(RANK_SIZE) > 1: + rank_id = int(os.getenv('RANK_ID')) + input = tf.trainable_variables() + bcast_global_variables_op = hccl_ops.broadcast(input, 0) + self.sess.run(bcast_global_variables_op) + else : + rank_id = 0 for ep in range(config.epoch): # Run by batch images - batch_idxs = len(train_data_ir) // config.batch_size + batch_idxs = len(train_data_ir) // (config.batch_size*RANK_SIZE) # print(batch_idxs) # print(ep) # for idx in range(0, batch_idxs): + start_idx=rank_id for idx in range(0, batch_idxs - config.info_num): #add config.info_num=0 默认为0 start_time = time.time() - batch_images_ir = train_data_ir[idx*config.batch_size : (idx+1)*config.batch_size] - batch_labels_ir = train_label_ir[idx*config.batch_size : (idx+1)*config.batch_size] - batch_images_vi = train_data_vi[idx*config.batch_size : (idx+1)*config.batch_size] - batch_labels_vi = train_label_vi[idx*config.batch_size : (idx+1)*config.batch_size] + batch_images_ir = train_data_ir[start_idx*config.batch_size : (start_idx+1)*config.batch_size] + batch_labels_ir = train_label_ir[start_idx*config.batch_size : (start_idx+1)*config.batch_size] + batch_images_vi = train_data_vi[start_idx*config.batch_size : (start_idx+1)*config.batch_size] + batch_labels_vi = train_label_vi[start_idx*config.batch_size : (start_idx+1)*config.batch_size] + start_idx=start_idx+RANK_SIZE # print(counter) counter += 1 for i in range(2): diff --git a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/test/train_full_8p.sh b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/test/train_full_8p.sh new file mode 100644 index 0000000000000000000000000000000000000000..d7ab858a8dc37665e3fbeb5fec5fd33605178268 --- /dev/null +++ b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/test/train_full_8p.sh @@ -0,0 +1,178 @@ +#!/bin/bash + +#当前路径,不需要修改 +cur_path=`pwd` + +#集合通信参数,不需要修改 + +export RANK_SIZE=8 +export RANK_TABLE_FILE=${cur_path}/../configs/rank_table_8p.json +export JOB_ID=10087 +RANK_ID_START=0 + + +# 数据集路径,保持为空,不需要修改 +data_path='' +#预训练模型地址 +ckpt_path='' + +#设置默认日志级别,不需要改 +#export ASCEND_GLOBAL_LOG_LEVEL=3 +#export ASCEND_DEVICE_ID=4 + +#基础参数,需要模型审视修改 +#网络名称,同目录名称 +Network="FusionGAN_ID2124_for_TensorFlow" +#训练epoch +epochs=12 +#训练batch_size +batch_size=64 + + +#TF2.X独有,需要模型审视修改 +export NPU_LOOP_SIZE=${train_steps} + +#维测参数,precision_mode需要模型审视修改 +precision_mode="allow_mix_precision" +#维持参数,以下不需要修改 +over_dump=False +data_dump_flag=False +data_dump_step="10" +profiling=False + +# 帮助信息,不需要修改 +if [[ $1 == --help || $1 == -h ]];then + echo"usage:./train_performance_1P.sh " + echo " " + echo "parameter explain: + --precision_mode precision mode(allow_fp32_to_fp16/force_fp16/must_keep_origin_dtype/allow_mix_precision) + --over_dump if or not over detection, default is False + --data_dump_flag data dump flag, default is False + --data_dump_step data dump step, default is 10 + --profiling if or not profiling for performance debug, default is False + --data_path source data of training + --ckpt_path model + -h/--help show help message + " + exit 1 +fi + +#参数校验,不需要修改 +for para in $* +do + if [[ $para == --precision_mode* ]];then + precision_mode=`echo ${para#*=}` + elif [[ $para == --over_dump* ]];then + over_dump=`echo ${para#*=}` + over_dump_path=${cur_path}/output/overflow_dump + mkdir -p ${over_dump_path} + elif [[ $para == --data_dump_flag* ]];then + data_dump_flag=`echo ${para#*=}` + data_dump_path=${cur_path}/output/data_dump + mkdir -p ${data_dump_path} + elif [[ $para == --data_dump_step* ]];then + data_dump_step=`echo ${para#*=}` + elif [[ $para == --profiling* ]];then + profiling=`echo ${para#*=}` + profiling_dump_path=${cur_path}/output/profiling + mkdir -p ${profiling_dump_path} + elif [[ $para == --data_path* ]];then + data_path=`echo ${para#*=}` + elif [[ $para == --ckpt_path* ]];then + ckpt_path=`echo ${para#*=}` + fi +done +# #校验是否传入data_path,不需要修改 +# if [[$data_path == ""]];then +# echo "[Error] para \"data_path\" must be confing" +# exit 1 +# fi + +#训练开始时间,不需要修改 +start_time=$(date +%s) + +#进入训练脚本目录,需要模型审视修改 +cd $cur_path/../ +for((RANK_ID=$RANK_ID_START;RANK_ID<$((RANK_SIZE+RANK_ID_START));RANK_ID++)); +do + #设置环境变量,不需要修改 + echo "Device ID: $ASCEND_DEVICE_ID" + export RANK_ID=$RANK_ID + export ASCEND_DEVICE_ID=$RANK_ID + ASCEND_DEVICE_ID=$RANK_ID + DEVICE_INDEX=$RANK_ID + export DEVICE_INDEX=${DEVICE_INDEX} + + #创建DeviceID输出目录,不需要修改 + if [ -d ${cur_path}/output/${ASCEND_DEVICE_ID} ];then + rm -rf ${cur_path}/output/${ASCEND_DEVICE_ID} + mkdir -p ${cur_path}/output/$ASCEND_DEVICE_ID/ckpt + else + mkdir -p ${cur_path}/output/$ASCEND_DEVICE_ID/ckpt + fi + + #执行训练脚本,以下传参不需要修改,其他需要模型审视修改 + #12epoch,生成11模型 + nohup python3 main.py ${data_path}/dataset ${cur_path} \ + --epoch=12 \ + --info_num=0 > ${cur_path}/output/${ASCEND_DEVICE_ID}/train_${ASCEND_DEVICE_ID}.log 2>&1 & + +done +wait + +export RANK_ID=7 +export ASCEND_DEVICE_ID=$RANK_ID +ASCEND_DEVICE_ID=$RANK_ID +DEVICE_INDEX=$RANK_ID +export DEVICE_INDEX=${DEVICE_INDEX} +nohup python3 test_one_image.py ${data_path}/dataset ${cur_path} > ${cur_path}/output/${ASCEND_DEVICE_ID}/test_${ASCEND_DEVICE_ID}.log 2>&1 & +wait + +#训练结束时间,不需要修改 +end_time=$(date +%s) +e2e_time=$(( $end_time - $start_time )) + +#结果打印,不需要修改 +echo "------------------ Final result ------------------" +#输出性能FPS,需要模型审视修改 +TrainingTime=`grep 'perf_mean:' $cur_path/output/${ASCEND_DEVICE_ID}/train_${ASCEND_DEVICE_ID}.log|awk 'END {print $14}'` +FPS=`grep 'fps_mean:' $cur_path/output/${ASCEND_DEVICE_ID}/train_${ASCEND_DEVICE_ID}.log|awk 'END {print $16}'` +#打印,不需要修改 +echo "Final Performance TrainingTime : $TrainingTime" +echo "Final Performance images/sec : $FPS" + +#输出训练精度,需要模型审视修改 +train_accuracy=`grep all_result $cur_path/output/${ASCEND_DEVICE_ID}/test_${ASCEND_DEVICE_ID}.log|awk -F "vif:" '{print $2}'` + +#打印,不需要修改 +echo "Final Train Accuracy : ${train_accuracy}" +echo "E2E Training Duration sec : $e2e_time" + +#性能看护结果汇总 +#训练用例信息,不需要修改 +BatchSize=${batch_size} +DeviceType=`uname -m` +CaseName=${Network}_bs${BatchSize}_${RANK_SIZE}'p'_'acc' + +##获取性能数据,不需要修改 +#吞吐量 +ActualFPS=${FPS} +#单迭代训练时长 +#TrainingTime=`awk 'BEGIN{printf "%.2f\n",'${FPS}'/69}'` + +#从train_$ASCEND_DEVICE_ID.log提取Loss到train_${CaseName}_loss.txt中,需要根据模型审视 +grep 'loss_d:' $cur_path/output/$ASCEND_DEVICE_ID/train_$ASCEND_DEVICE_ID.log|awk '{print $10}' >> $cur_path/output/$ASCEND_DEVICE_ID/train_${CaseName}_loss.txt +#最后一个迭代loss值,不需要修改 +ActualLoss=`awk 'END {print}' $cur_path/output/$ASCEND_DEVICE_ID/train_${CaseName}_loss.txt` + +#关键信息打印到${CaseName}.log中,不需修改 +echo "Network = ${Network}" > $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "RankSize = ${RANK_SIZE}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "BatchSize = ${BatchSize}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "DeviceType = ${DeviceType}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "CaseName = ${CaseName}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "ActualFPS = ${ActualFPS}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "TrainingTime = ${TrainingTime}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "ActualLoss = ${ActualLoss}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "E2ETrainingTime = ${e2e_time}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log +echo "TrainAccuracy = ${train_accuracy}" >> $cur_path/output/$ASCEND_DEVICE_ID/${CaseName}.log \ No newline at end of file diff --git a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/utils.py b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/utils.py index 0c82b6f8c0e8e37c61a3f9038db70e5089416388..7318d1ce0f986d4517ac463c923f34f785132376 100644 --- a/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/utils.py +++ b/TensorFlow/contrib/cv/fusiongan/FusionGAN_ID2124_for_TensorFlow/utils.py @@ -105,6 +105,7 @@ def make_data(sess, data, label, data_dir): Depending on 'is_train' (flag value), savepath would be changed. #把_20都删了 """ + os.environ["HDF5_USE_FILE_LOCKING"] = "FALSE" if FLAGS.is_train: #savepath = os.path.join(os.getcwd(), os.path.join('checkpoint',data_dir,'train.h5')) savepath = os.path.join(os.path.join(data_dir, 'train.h5')) diff --git a/TensorFlow2/contrib/cv/.keep b/TensorFlow2/contrib/cv/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/.keep b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/README.md b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/README.md new file mode 100644 index 0000000000000000000000000000000000000000..37ce81411701c47340195e313b4c8075fca8a514 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/README.md @@ -0,0 +1,156 @@ +## KeyPose: Pose Estimation with Keypoints + +This repository contains Tensorflow 2 models and a small set of +labeled transparent object data from the +[KeyPose project](https://sites.google.com/corp/view/keypose/). There +are sample programs for displaying the data, running the models to +predict keypoints on the data, and training from data. + +The full dataset can be downloaded using the directions at the end of this README. It contains stereo and depth image sequences (720p) of 15 small transparent objects in 5 categories (ball, bottle, cup, mug, heart, tree), against 10 different textured backgrounds, with 4 poses for each object. There are a total of 600 sequences with approximately 48k stereo and depth images. The depth images are taken with both transparent and opaque objects in the exact same position. All RGB and depth images are registered for pixel correspondence, the camera parameters and pose are given, and keypoints are labeled in each image and in 3D. + +## Setup and sample programs + +To install required python libraries (running in directory +above `keypose/`): +``` +pip3 install -r keypose/requirements.txt +``` + + +To look at images and ground-truth keypoints (running in directory +above `keypose/`): +``` +$ python3 -m keypose.show_keypoints keypose/data/bottle_0/texture_5_pose_0/ keypose/objects/bottle_0.obj +``` + +To predict keypoints from a model (running in directory above +`keypose/`), first download the models: +``` +keypose/download_models.sh +``` +Then run the `predict` command: +``` +$ python3 -m keypose.predict keypose/models/bottle_0_t5/ keypose/data/bottle_0/texture_5_pose_0/ keypose/objects/bottle_0.obj +``` + +## Repository layout + +- top level: contains the sample programs. +- `configs/` contains training configuration files. +- `data/` contains the transparent object data. +- `models/` contains the trained Tensorflow models. +- `objects/` contains simplified vertex CAD files for each object, for use in display. +- `tfrecords/` contains tfrecord structures for training, created from + transparent object data + +### Data directory structure and files. + +The directory structure for the data divides into one directory for each object, with sub-directories +for each texture/pose sequence. Each sequence has about 80 images, numbered sequentially with a prefix. +``` + bottle_0/ + texture_0_pose_0/ + 000000_L.png - Left image (reference image) + 000000_L.pbtxt - Left image parameters + 000000_R.png - Right image + 000000_R.pbtxt - Right image parameters + 000000_border.png - Border of the object in the left image (grayscale) + 000000_mask.png - Mask of the object in the left image (grayscale) + 000000_Dt.exr - Depth image for the transparent object + 000000_Do.exr - Depth image for the opaque object + ... +``` + +### Model naming conventions. + +In the `models/` directory, there are a set of sub-directories containing TF KeyPose models trained for individual and category predictions. +``` + bottle_0_t5/ - Trained on bottle_0, leaving out texture_5_pose_* data + bottle_1_t5/ + ... + bottles_t5/ - Trained on all bottles, leaving out texture_5_pose_* data + bottles_cups_t5/ + mugs_t5/ + + mugs_m0/ - Trained on all mugs except mug_0 +``` + +So, for example, you can use the `predict.py` program to run the `mugs_m0` model against any of the sequences in `data/mug_0/`, +to show how the model performs against a mug it has not seen before. Similarly, running the model `bottle_0_t5` against +any sequence in `data/bottle_0/texture_5_pose_*` will do predictions against the test set. + +## Downloading data and models. + +Data and models are available publicly on Google Cloud Storage. + +To download all the models, use: +``` +keypose/download_models.sh +``` +This will populate the `models/` directory. + +The image files are large, and divided up by object. To get any individual object, use: +``` +wget https://storage.googleapis.com/keypose-transparent-object-dataset/.zip +``` +Then unzip at the `keypose/` directory, and it will populate the appropriate `data/` directories. +These are the 15 available objects: +``` +ball_0 +bottle_0 +bottle_1 +bottle_2 +cup_0 +cup_1 +mug_0 +mug_1 +mug_2 +mug_3 +mug_4 +mug_5 +mug_6 +heart_0 +tree_0 +``` + +## Training a model. + +To train a model, the data must be put into tfrecord format, and then grouped +according to train and test records. There are programs below that will do +this. For a quick start, you can download a set of tfrecords for training +a bottle_0 model that uses texture 5 as the test set. + +To get the sample tfrecords (3.4 GB), use the following: +``` +wget https://storage.googleapis.com/keypose-transparent-object-dataset/tfrecords.zip +``` +Then unzip at the `keypose/` directory, and it will populate the appropriate +`tfrecords/` directories. + +To train, use this command (running in directory above `keypose/`): +``` +$ python3 -m keypose.trainer configs/bottle_0_t5 /tmp/model +``` + +This will run the training using Estimators, and put checkpoints and saved +models into `/tmp/model`. It helps to have a good GPU with lots of memory. +If you run out of memory on the GPU, reduce the batch size in +`configs/default.yaml` from 32 to 16 or 8. Periodically the trainer will +write out models in the saved_model format. + +## Generating tfrecords from image directories + +To put images and associated metadata into tfrecord format, suitable +for training, use the following command (running in directory above `keypose/`): +``` +$ python3 -m keypose.gen_tfrecords configs/tfset_bottle_0_t5 +`` + +The configuration file `configs/tfset_bottle_0_t5.pbtxt` is a protobuf +that names the tfrecord output directory, as well as the directory +paths for inputs for train and val. It also lets you resize the +original images -- for example, the sample tfrecords used in training +are resized to 756x424, with a camera focal length of 400 pixels. + +The output of the process is in `keypose/tfrecords//tfrecords`. +This directory is suitable for input to `trainer.py`. diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/__init.py__ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/__init.py__ new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/configs/bottle_0_t5.yaml b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/configs/bottle_0_t5.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1efe76350120284c08a88740886263ad7a1f2fb7 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/configs/bottle_0_t5.yaml @@ -0,0 +1,3 @@ +# Stereo +default_file: configs/default_base +dset_dir: tfrecords/bottle_0_756x424_fl400_t5/tfrecords diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/configs/default_base.yaml b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/configs/default_base.yaml new file mode 100644 index 0000000000000000000000000000000000000000..4f6c79d686de30d57ebe9cc0a4bb015928f8dee8 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/configs/default_base.yaml @@ -0,0 +1,30 @@ +# Default parameters +# Stereo, regression uvd +batch_size: 32 +learning_rate: [20000, 70000, 0.001, 0.0005, 0.0005, 0.0001, 0.00001, 0.000005] +steps: 70000 +model_params: + batchnorm: [0.999, 1.0e-8, False] # decay, epsilon, scale + filter_size: 3 + loss_prob: 0.001 + loss_onscreen: 0.0 + loss_kp: 1.0 + loss_kp_step: [0, 200] + loss_proj: 2.5 + loss_proj_step: [5000, 10000] + loss_reg: 0.01 + num_filters: 48 + noise: 4.0 + gamma: [0.8, 1.2] + motion: [0, 0, 0, 0] + blur: [1.0, 4.0] + occ_fraction: 0.2 + rot: [5, 0, 0] + shear: [] + scale: [] + max_dilation: 32 + sym: [0] + use_regress: True + use_stereo: True + dilation_rep: 1 + crop: [180, 120, 30] diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data.proto b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data.proto new file mode 100644 index 0000000000000000000000000000000000000000..3ea2a898cfe3bb53ad08dc9a3c310c3c370d93c3 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data.proto @@ -0,0 +1,83 @@ +// Copyright 2022 The Google Research Authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto2"; + +package keypose; + +// 4x4 transform matrix, row major order. +// Transform is cam_T_world, from world to camera coordinates. +message Transform { + repeated float element = 1; +} + +message Camera { + optional float fx = 1; // In pixels. + optional float fy = 2; + optional float cx = 3; + optional float cy = 4; + optional float baseline = 5; // In meters. + optional float resx = 6; // Image resolution in pixels. + optional float resy = 7; +} + +// Targets are assocated with an image: +// Transform from world to camera, cam_T_world. +// Camera parameters. +// Keypoints in the image. +message Target { + optional keypose.Transform transform = 1; + optional keypose.Camera camera = 2; + + message KeyPoint { + optional float u = 1; // Image coords (pixels) of kp. + optional float v = 2; + optional float x = 3; // x,y are normalized image coords of kp, NOT 3D x,y. + optional float y = 4; // Normalized coords are in [0, 1]. + optional float z = 5; // Distance from camera (m) of kp. + optional float visible = 6 [default = 1.0]; // 1.0 if kp is onscreen. + } + + repeated KeyPoint keypoints = 3; +} + +// Keypoint and projection targets for an image. +// This is the top-level pb for stereo samples. +message KeyTargets { + optional keypose.Target kp_target = 1; + repeated keypose.Target proj_targets = 2; + optional bool mirrored = 3 [default = false]; +} + +// Dataset parameters. +message DataParams { + // TODO: resx, resy are redundant given the camera. + optional int32 resx = 1; + optional int32 resy = 2; + optional int32 num_kp = 3; + optional keypose.Camera camera = 4; +} + +// TFRecord sets for training and evaluation +message TfSet { + optional string name = 1; // Output will be in keypose/tfrecords/. + optional string common_dir = 2; // Directory prefix common to all files, + // e.g. keypose/data/bottle_0. + repeated string train = 3; // Training tfrecord dirs (e.g. */756x424_fl400). + repeated string val = 4; // Val tfrecord dirs (texture_5_*/756x424_fl400). + // Note: val dirs are excluded from train dirs. + repeated string exclude = 5; // Exclude these dirs from train/val. + optional string image_size = 6; // Resized image, e.g., 756x424_fl400. + // fl400 means focal length 400 pixels. +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_L.pbtxt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_L.pbtxt new file mode 100644 index 0000000000000000000000000000000000000000..638fb13622b4503f5401e8c359812d36e2aee5ee --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_L.pbtxt @@ -0,0 +1,315 @@ +kp_target { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.35567248 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 417.01191 + v: 412.04999 + x: 0.32579056 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 417.13662 + v: 479.85671 + x: 0.32588799 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.81892949 + element: -0.5620517 + element: 0.11598437 + element: 0.28595689 + element: -0.23223507 + element: 0.1397401 + element: -0.96256926 + element: 0.18322364 + element: 0.52480602 + element: -0.81521199 + element: -0.2449654 + element: 1.0398693 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 377.10256 + v: 426.49125 + x: 0.29461138 + y: 0.59234896 + z: 0.74395548 + visible: 1.0 + } + keypoints { + u: 374.72026 + v: 496.46792 + x: 0.29275021 + y: 0.68953878 + z: 0.76611513 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.35567248 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 417.01191 + v: 412.04999 + x: 0.32579056 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 417.13662 + v: 479.85671 + x: 0.32588799 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.34773776 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 387.01836 + v: 406.90251 + x: 0.30235809 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 386.79351 + v: 480.7883 + x: 0.30218243 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.60330416 + element: -0.79575923 + element: 0.052833159 + element: 0.41353088 + element: -0.24878056 + element: 0.12484321 + element: -0.9604803 + element: 0.15593852 + element: 0.7577152 + element: -0.59260562 + element: -0.27328785 + element: 0.77383274 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 415.56459 + v: 394.85817 + x: 0.32465984 + y: 0.54841413 + z: 0.67390373 + visible: 1.0 + } + keypoints { + u: 418.2323 + v: 472.16573 + x: 0.32674399 + y: 0.65578574 + z: 0.69878785 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.43206435 + element: -0.90166036 + element: -0.018137986 + element: 0.52445507 + element: -0.39285132 + element: 0.20627694 + element: -0.89616832 + element: 0.17389398 + element: 0.8117809 + element: -0.38007686 + element: -0.44334337 + element: 0.70208977 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 526.11764 + v: 410.78189 + x: 0.4110294 + y: 0.57053041 + z: 0.72111181 + visible: 1.0 + } + keypoints { + u: 532.67742 + v: 474.75694 + x: 0.41615423 + y: 0.65938464 + z: 0.7606108 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.49434112 + element: -0.86754457 + element: -0.054710793 + element: 0.4845642 + element: -0.41607468 + element: 0.29140776 + element: -0.86137296 + element: 0.16108985 + element: 0.76322259 + element: -0.4030483 + element: -0.50501817 + element: 0.70122751 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 476.45081 + v: 443.33109 + x: 0.3722272 + y: 0.61573763 + z: 0.68617132 + visible: 1.0 + } + keypoints { + u: 489.87509 + v: 504.57262 + x: 0.38271491 + y: 0.70079531 + z: 0.73089753 + visible: 1.0 + } +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_L.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_L.png new file mode 100644 index 0000000000000000000000000000000000000000..6c34b45aed94a00730d50881c48b23a5ffba44fe Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_L.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_R.pbtxt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_R.pbtxt new file mode 100644 index 0000000000000000000000000000000000000000..ab692b388814e05f92f3084db52237cf8ad21049 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_R.pbtxt @@ -0,0 +1,315 @@ +kp_target { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.23566548 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 310.22114 + v: 412.04999 + x: 0.24236026 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 313.83719 + v: 479.85671 + x: 0.2451853 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.81892949 + element: -0.5620517 + element: 0.11598437 + element: 0.16594989 + element: -0.23223507 + element: 0.1397401 + element: -0.96256926 + element: 0.18322364 + element: 0.52480602 + element: -0.81521199 + element: -0.2449654 + element: 1.0398693 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 268.11918 + v: 426.49125 + x: 0.20946811 + y: 0.59234896 + z: 0.74395548 + visible: 1.0 + } + keypoints { + u: 268.88919 + v: 496.46792 + x: 0.21006968 + y: 0.68953878 + z: 0.76611513 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.23566548 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 310.22114 + v: 412.04999 + x: 0.24236026 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 313.83719 + v: 479.85671 + x: 0.2451853 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.22773076 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 271.25608 + v: 406.90251 + x: 0.21191881 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 274.95866 + v: 480.7883 + x: 0.21481145 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.60330416 + element: -0.79575923 + element: 0.052833159 + element: 0.29352388 + element: -0.24878056 + element: 0.12484321 + element: -0.9604803 + element: 0.15593852 + element: 0.7577152 + element: -0.59260562 + element: -0.27328785 + element: 0.77383274 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 295.25247 + v: 394.85817 + x: 0.230666 + y: 0.54841413 + z: 0.67390373 + visible: 1.0 + } + keypoints { + u: 302.20455 + v: 472.16573 + x: 0.2360973 + y: 0.65578574 + z: 0.69878785 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.43206435 + element: -0.90166036 + element: -0.018137986 + element: 0.40444807 + element: -0.39285132 + element: 0.20627694 + element: -0.89616832 + element: 0.17389398 + element: 0.8117809 + element: -0.38007686 + element: -0.44334337 + element: 0.70208977 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 413.68183 + v: 410.78189 + x: 0.32318893 + y: 0.57053041 + z: 0.72111181 + visible: 1.0 + } + keypoints { + u: 426.08048 + v: 474.75694 + x: 0.33287537 + y: 0.65938464 + z: 0.7606108 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.49434112 + element: -0.86754457 + element: -0.054710793 + element: 0.3645572 + element: -0.41607468 + element: 0.29140776 + element: -0.86137296 + element: 0.16108985 + element: 0.76322259 + element: -0.4030483 + element: -0.50501817 + element: 0.70122751 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 358.28967 + v: 443.33109 + x: 0.27991381 + y: 0.61573763 + z: 0.68617132 + visible: 1.0 + } + keypoints { + u: 378.94465 + v: 504.57262 + x: 0.29605051 + y: 0.70079531 + z: 0.73089753 + visible: 1.0 + } +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_R.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_R.png new file mode 100644 index 0000000000000000000000000000000000000000..016600d4cecf637c66da0f9124111f38ee9c525d Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_R.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_border.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_border.png new file mode 100644 index 0000000000000000000000000000000000000000..55c515ebe0b1627c5e0205a75b5042243be30f25 Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_border.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_mask.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..c99ec629638ef17098d703e516158096c4164a55 Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000001_mask.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_L.pbtxt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_L.pbtxt new file mode 100644 index 0000000000000000000000000000000000000000..8fe07e54e2dd1f7e0748c43412f9623ecb383861 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_L.pbtxt @@ -0,0 +1,315 @@ +kp_target { + transform { + element: -0.75136465 + element: -0.65365439 + element: 0.090482636 + element: 0.33658988 + element: -0.2493511 + element: 0.15428367 + element: -0.95604423 + element: 0.16231994 + element: 0.61096252 + element: -0.74089978 + element: -0.27891274 + element: 0.95454479 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 389.31023 + v: 412.07937 + x: 0.30414862 + y: 0.57233245 + z: 0.72462487 + visible: 1.0 + } + keypoints { + u: 389.59463 + v: 483.17168 + x: 0.3043708 + y: 0.67107177 + z: 0.74981074 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.81892949 + element: -0.5620517 + element: 0.11598437 + element: 0.28595689 + element: -0.23223507 + element: 0.1397401 + element: -0.96256926 + element: 0.18322364 + element: 0.52480602 + element: -0.81521199 + element: -0.2449654 + element: 1.0398693 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 377.10256 + v: 426.49125 + x: 0.29461138 + y: 0.59234896 + z: 0.74395548 + visible: 1.0 + } + keypoints { + u: 374.72026 + v: 496.46792 + x: 0.29275021 + y: 0.68953878 + z: 0.76611513 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.35567248 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 417.01191 + v: 412.04999 + x: 0.32579056 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 417.13662 + v: 479.85671 + x: 0.32588799 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.34773776 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 387.01836 + v: 406.90251 + x: 0.30235809 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 386.79351 + v: 480.7883 + x: 0.30218243 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.60330416 + element: -0.79575923 + element: 0.052833159 + element: 0.41353088 + element: -0.24878056 + element: 0.12484321 + element: -0.9604803 + element: 0.15593852 + element: 0.7577152 + element: -0.59260562 + element: -0.27328785 + element: 0.77383274 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 415.56459 + v: 394.85817 + x: 0.32465984 + y: 0.54841413 + z: 0.67390373 + visible: 1.0 + } + keypoints { + u: 418.2323 + v: 472.16573 + x: 0.32674399 + y: 0.65578574 + z: 0.69878785 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.43206435 + element: -0.90166036 + element: -0.018137986 + element: 0.52445507 + element: -0.39285132 + element: 0.20627694 + element: -0.89616832 + element: 0.17389398 + element: 0.8117809 + element: -0.38007686 + element: -0.44334337 + element: 0.70208977 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 526.11764 + v: 410.78189 + x: 0.4110294 + y: 0.57053041 + z: 0.72111181 + visible: 1.0 + } + keypoints { + u: 532.67742 + v: 474.75694 + x: 0.41615423 + y: 0.65938464 + z: 0.7606108 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.49434112 + element: -0.86754457 + element: -0.054710793 + element: 0.4845642 + element: -0.41607468 + element: 0.29140776 + element: -0.86137296 + element: 0.16108985 + element: 0.76322259 + element: -0.4030483 + element: -0.50501817 + element: 0.70122751 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 476.45081 + v: 443.33109 + x: 0.3722272 + y: 0.61573763 + z: 0.68617132 + visible: 1.0 + } + keypoints { + u: 489.87509 + v: 504.57262 + x: 0.38271491 + y: 0.70079531 + z: 0.73089753 + visible: 1.0 + } +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_L.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_L.png new file mode 100644 index 0000000000000000000000000000000000000000..9d6670b4be4a26a68126db4c27c5248a8cdcf565 Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_L.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_R.pbtxt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_R.pbtxt new file mode 100644 index 0000000000000000000000000000000000000000..045c94b5da71fc6452cba66fe02d5a61b4b5ddd7 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_R.pbtxt @@ -0,0 +1,315 @@ +kp_target { + transform { + element: -0.75136465 + element: -0.65365439 + element: 0.090482636 + element: 0.21658288 + element: -0.2493511 + element: 0.15428367 + element: -0.95604423 + element: 0.16231994 + element: 0.61096252 + element: -0.74089978 + element: -0.27891274 + element: 0.95454479 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 277.41953 + v: 412.07937 + x: 0.21673401 + y: 0.57233245 + z: 0.72462487 + visible: 1.0 + } + keypoints { + u: 281.4623 + v: 483.17168 + x: 0.21989242 + y: 0.67107177 + z: 0.74981074 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.81892949 + element: -0.5620517 + element: 0.11598437 + element: 0.16594989 + element: -0.23223507 + element: 0.1397401 + element: -0.96256926 + element: 0.18322364 + element: 0.52480602 + element: -0.81521199 + element: -0.2449654 + element: 1.0398693 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 268.11918 + v: 426.49125 + x: 0.20946811 + y: 0.59234896 + z: 0.74395548 + visible: 1.0 + } + keypoints { + u: 268.88919 + v: 496.46792 + x: 0.21006968 + y: 0.68953878 + z: 0.76611513 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.23566548 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 310.22114 + v: 412.04999 + x: 0.24236026 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 313.83719 + v: 479.85671 + x: 0.2451853 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.22773076 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 271.25608 + v: 406.90251 + x: 0.21191881 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 274.95866 + v: 480.7883 + x: 0.21481145 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.60330416 + element: -0.79575923 + element: 0.052833159 + element: 0.29352388 + element: -0.24878056 + element: 0.12484321 + element: -0.9604803 + element: 0.15593852 + element: 0.7577152 + element: -0.59260562 + element: -0.27328785 + element: 0.77383274 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 295.25247 + v: 394.85817 + x: 0.230666 + y: 0.54841413 + z: 0.67390373 + visible: 1.0 + } + keypoints { + u: 302.20455 + v: 472.16573 + x: 0.2360973 + y: 0.65578574 + z: 0.69878785 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.43206435 + element: -0.90166036 + element: -0.018137986 + element: 0.40444807 + element: -0.39285132 + element: 0.20627694 + element: -0.89616832 + element: 0.17389398 + element: 0.8117809 + element: -0.38007686 + element: -0.44334337 + element: 0.70208977 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 413.68183 + v: 410.78189 + x: 0.32318893 + y: 0.57053041 + z: 0.72111181 + visible: 1.0 + } + keypoints { + u: 426.08048 + v: 474.75694 + x: 0.33287537 + y: 0.65938464 + z: 0.7606108 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.49434112 + element: -0.86754457 + element: -0.054710793 + element: 0.3645572 + element: -0.41607468 + element: 0.29140776 + element: -0.86137296 + element: 0.16108985 + element: 0.76322259 + element: -0.4030483 + element: -0.50501817 + element: 0.70122751 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 358.28967 + v: 443.33109 + x: 0.27991381 + y: 0.61573763 + z: 0.68617132 + visible: 1.0 + } + keypoints { + u: 378.94465 + v: 504.57262 + x: 0.29605051 + y: 0.70079531 + z: 0.73089753 + visible: 1.0 + } +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_R.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_R.png new file mode 100644 index 0000000000000000000000000000000000000000..7a0292c42c8baa6c309a3da934995cafbaea7d22 Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_R.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_border.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_border.png new file mode 100644 index 0000000000000000000000000000000000000000..ced3640c10e73463b88ae5e8239a7b67400dcd6b Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_border.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_mask.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..67aee60261f3ce5ec0b4e812e97a210514070d5b Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000002_mask.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_L.pbtxt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_L.pbtxt new file mode 100644 index 0000000000000000000000000000000000000000..bb1d75dcaed53338367618ed7c2ac7bd00e8baac --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_L.pbtxt @@ -0,0 +1,315 @@ +kp_target { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.34773776 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 387.01836 + v: 406.90251 + x: 0.30235809 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 386.79351 + v: 480.7883 + x: 0.30218243 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.81892949 + element: -0.5620517 + element: 0.11598437 + element: 0.28595689 + element: -0.23223507 + element: 0.1397401 + element: -0.96256926 + element: 0.18322364 + element: 0.52480602 + element: -0.81521199 + element: -0.2449654 + element: 1.0398693 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 377.10256 + v: 426.49125 + x: 0.29461138 + y: 0.59234896 + z: 0.74395548 + visible: 1.0 + } + keypoints { + u: 374.72026 + v: 496.46792 + x: 0.29275021 + y: 0.68953878 + z: 0.76611513 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.35567248 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 417.01191 + v: 412.04999 + x: 0.32579056 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 417.13662 + v: 479.85671 + x: 0.32588799 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.34773776 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 387.01836 + v: 406.90251 + x: 0.30235809 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 386.79351 + v: 480.7883 + x: 0.30218243 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.60330416 + element: -0.79575923 + element: 0.052833159 + element: 0.41353088 + element: -0.24878056 + element: 0.12484321 + element: -0.9604803 + element: 0.15593852 + element: 0.7577152 + element: -0.59260562 + element: -0.27328785 + element: 0.77383274 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 415.56459 + v: 394.85817 + x: 0.32465984 + y: 0.54841413 + z: 0.67390373 + visible: 1.0 + } + keypoints { + u: 418.2323 + v: 472.16573 + x: 0.32674399 + y: 0.65578574 + z: 0.69878785 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.43206435 + element: -0.90166036 + element: -0.018137986 + element: 0.52445507 + element: -0.39285132 + element: 0.20627694 + element: -0.89616832 + element: 0.17389398 + element: 0.8117809 + element: -0.38007686 + element: -0.44334337 + element: 0.70208977 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 526.11764 + v: 410.78189 + x: 0.4110294 + y: 0.57053041 + z: 0.72111181 + visible: 1.0 + } + keypoints { + u: 532.67742 + v: 474.75694 + x: 0.41615423 + y: 0.65938464 + z: 0.7606108 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.49434112 + element: -0.86754457 + element: -0.054710793 + element: 0.4845642 + element: -0.41607468 + element: 0.29140776 + element: -0.86137296 + element: 0.16108985 + element: 0.76322259 + element: -0.4030483 + element: -0.50501817 + element: 0.70122751 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 476.45081 + v: 443.33109 + x: 0.3722272 + y: 0.61573763 + z: 0.68617132 + visible: 1.0 + } + keypoints { + u: 489.87509 + v: 504.57262 + x: 0.38271491 + y: 0.70079531 + z: 0.73089753 + visible: 1.0 + } +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_L.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_L.png new file mode 100644 index 0000000000000000000000000000000000000000..31eb707ee078915eceeba2e11e965c6428f21798 Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_L.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_R.pbtxt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_R.pbtxt new file mode 100644 index 0000000000000000000000000000000000000000..c1514b88cb88d8c67a81835e4cb6695b7f5d8b2e --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_R.pbtxt @@ -0,0 +1,315 @@ +kp_target { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.22773076 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 271.25608 + v: 406.90251 + x: 0.21191881 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 274.95866 + v: 480.7883 + x: 0.21481145 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.81892949 + element: -0.5620517 + element: 0.11598437 + element: 0.16594989 + element: -0.23223507 + element: 0.1397401 + element: -0.96256926 + element: 0.18322364 + element: 0.52480602 + element: -0.81521199 + element: -0.2449654 + element: 1.0398693 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 268.11918 + v: 426.49125 + x: 0.20946811 + y: 0.59234896 + z: 0.74395548 + visible: 1.0 + } + keypoints { + u: 268.88919 + v: 496.46792 + x: 0.21006968 + y: 0.68953878 + z: 0.76611513 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.75454066 + element: -0.65109288 + element: 0.082136776 + element: 0.23566548 + element: -0.24608562 + element: 0.16468977 + element: -0.95515399 + element: 0.1592131 + element: 0.60836688 + element: -0.7409152 + element: -0.28448972 + element: 0.99051199 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 310.22114 + v: 412.04999 + x: 0.24236026 + y: 0.57229166 + z: 0.75923024 + visible: 1.0 + } + keypoints { + u: 313.83719 + v: 479.85671 + x: 0.2451853 + y: 0.66646765 + z: 0.78489091 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.73107856 + element: -0.67551464 + element: 0.095938024 + element: 0.22773076 + element: -0.2530271 + element: 0.13784078 + element: -0.95758927 + element: 0.1646602 + element: 0.6336414 + element: -0.72434791 + element: -0.27169595 + element: 0.91313941 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 271.25608 + v: 406.90251 + x: 0.21191881 + y: 0.56514237 + z: 0.70039036 + visible: 1.0 + } + keypoints { + u: 274.95866 + v: 480.7883 + x: 0.21481145 + y: 0.66776152 + z: 0.72498674 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.60330416 + element: -0.79575923 + element: 0.052833159 + element: 0.29352388 + element: -0.24878056 + element: 0.12484321 + element: -0.9604803 + element: 0.15593852 + element: 0.7577152 + element: -0.59260562 + element: -0.27328785 + element: 0.77383274 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 295.25247 + v: 394.85817 + x: 0.230666 + y: 0.54841413 + z: 0.67390373 + visible: 1.0 + } + keypoints { + u: 302.20455 + v: 472.16573 + x: 0.2360973 + y: 0.65578574 + z: 0.69878785 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.43206435 + element: -0.90166036 + element: -0.018137986 + element: 0.40444807 + element: -0.39285132 + element: 0.20627694 + element: -0.89616832 + element: 0.17389398 + element: 0.8117809 + element: -0.38007686 + element: -0.44334337 + element: 0.70208977 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 413.68183 + v: 410.78189 + x: 0.32318893 + y: 0.57053041 + z: 0.72111181 + visible: 1.0 + } + keypoints { + u: 426.08048 + v: 474.75694 + x: 0.33287537 + y: 0.65938464 + z: 0.7606108 + visible: 1.0 + } +} +proj_targets { + transform { + element: -0.49434112 + element: -0.86754457 + element: -0.054710793 + element: 0.3645572 + element: -0.41607468 + element: 0.29140776 + element: -0.86137296 + element: 0.16108985 + element: 0.76322259 + element: -0.4030483 + element: -0.50501817 + element: 0.70122751 + element: 0.0 + element: 0.0 + element: 0.0 + element: 1.0 + } + camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 + } + keypoints { + u: 358.28967 + v: 443.33109 + x: 0.27991381 + y: 0.61573763 + z: 0.68617132 + visible: 1.0 + } + keypoints { + u: 378.94465 + v: 504.57262 + x: 0.29605051 + y: 0.70079531 + z: 0.73089753 + visible: 1.0 + } +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_R.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_R.png new file mode 100644 index 0000000000000000000000000000000000000000..864342f0ea4e35ed0b0886596c148e16fc07ceea Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_R.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_border.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_border.png new file mode 100644 index 0000000000000000000000000000000000000000..bbb770cab35ef5866ff6e8382252a66cd97a6ed3 Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_border.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_mask.png b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..b9228f57526f80318180c3bc2b7beac757979883 Binary files /dev/null and b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/000003_mask.png differ diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/data_params.pbtxt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/data_params.pbtxt new file mode 100644 index 0000000000000000000000000000000000000000..41f453d05547842ef1f30d96be3a4fa25ab9fad3 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data/bottle_0/texture_5_pose_0/data_params.pbtxt @@ -0,0 +1,12 @@ +resx: 1280 +resy: 720 +num_kp: 2 +camera { + fx: 675.61713 + fy: 675.61713 + cx: 632.1181 + cy: 338.28537 + baseline: 0.120007 + resx: 1280.0 + resy: 720.0 +} diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data_pb2.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data_pb2.py new file mode 100644 index 0000000000000000000000000000000000000000..52784c381471bf343860b8fb6946ddf327754cdd --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/data_pb2.py @@ -0,0 +1,816 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: data.proto +# pylint: disable=bad-continuation +# pylint: disable=protected-access + +"""Generated protocol buffer code.""" + +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + +DESCRIPTOR = _descriptor.FileDescriptor( + name='data.proto', + package='keypose', + syntax='proto2', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\ndata.proto\x12\x07keypose\"\x1c\n\tTransform\x12\x0f\n\x07\x65lement\x18\x01 \x03(\x02\"f\n\x06\x43\x61mera\x12\n\n\x02\x66x\x18\x01 \x01(\x02\x12\n\n\x02\x66y\x18\x02 \x01(\x02\x12\n\n\x02\x63x\x18\x03 \x01(\x02\x12\n\n\x02\x63y\x18\x04 \x01(\x02\x12\x10\n\x08\x62\x61seline\x18\x05 \x01(\x02\x12\x0c\n\x04resx\x18\x06 \x01(\x02\x12\x0c\n\x04resy\x18\x07 \x01(\x02\"\xd4\x01\n\x06Target\x12%\n\ttransform\x18\x01 \x01(\x0b\x32\x12.keypose.Transform\x12\x1f\n\x06\x63\x61mera\x18\x02 \x01(\x0b\x32\x0f.keypose.Camera\x12+\n\tkeypoints\x18\x03 \x03(\x0b\x32\x18.keypose.Target.KeyPoint\x1aU\n\x08KeyPoint\x12\t\n\x01u\x18\x01 \x01(\x02\x12\t\n\x01v\x18\x02 \x01(\x02\x12\t\n\x01x\x18\x03 \x01(\x02\x12\t\n\x01y\x18\x04 \x01(\x02\x12\t\n\x01z\x18\x05 \x01(\x02\x12\x12\n\x07visible\x18\x06 \x01(\x02:\x01\x31\"p\n\nKeyTargets\x12\"\n\tkp_target\x18\x01 \x01(\x0b\x32\x0f.keypose.Target\x12%\n\x0cproj_targets\x18\x02 \x03(\x0b\x32\x0f.keypose.Target\x12\x17\n\x08mirrored\x18\x03 \x01(\x08:\x05\x66\x61lse\"Y\n\nDataParams\x12\x0c\n\x04resx\x18\x01 \x01(\x05\x12\x0c\n\x04resy\x18\x02 \x01(\x05\x12\x0e\n\x06num_kp\x18\x03 \x01(\x05\x12\x1f\n\x06\x63\x61mera\x18\x04 \x01(\x0b\x32\x0f.keypose.Camera\"j\n\x05TfSet\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ncommon_dir\x18\x02 \x01(\t\x12\r\n\x05train\x18\x03 \x03(\t\x12\x0b\n\x03val\x18\x04 \x03(\t\x12\x0f\n\x07\x65xclude\x18\x05 \x03(\t\x12\x12\n\nimage_size\x18\x06 \x01(\t' +) + +_TRANSFORM = _descriptor.Descriptor( + name='Transform', + full_name='keypose.Transform', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='element', + full_name='keypose.Transform.element', + index=0, + number=1, + type=2, + cpp_type=6, + label=3, + has_default_value=False, + default_value=[], + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + ], + extensions=[], + nested_types=[], + enum_types=[], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[], + serialized_start=23, + serialized_end=51, +) + +_CAMERA = _descriptor.Descriptor( + name='Camera', + full_name='keypose.Camera', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='fx', + full_name='keypose.Camera.fx', + index=0, + number=1, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fy', + full_name='keypose.Camera.fy', + index=1, + number=2, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='cx', + full_name='keypose.Camera.cx', + index=2, + number=3, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='cy', + full_name='keypose.Camera.cy', + index=3, + number=4, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='baseline', + full_name='keypose.Camera.baseline', + index=4, + number=5, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='resx', + full_name='keypose.Camera.resx', + index=5, + number=6, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='resy', + full_name='keypose.Camera.resy', + index=6, + number=7, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + ], + extensions=[], + nested_types=[], + enum_types=[], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[], + serialized_start=53, + serialized_end=155, +) + +_TARGET_KEYPOINT = _descriptor.Descriptor( + name='KeyPoint', + full_name='keypose.Target.KeyPoint', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='u', + full_name='keypose.Target.KeyPoint.u', + index=0, + number=1, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='v', + full_name='keypose.Target.KeyPoint.v', + index=1, + number=2, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='x', + full_name='keypose.Target.KeyPoint.x', + index=2, + number=3, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='y', + full_name='keypose.Target.KeyPoint.y', + index=3, + number=4, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='z', + full_name='keypose.Target.KeyPoint.z', + index=4, + number=5, + type=2, + cpp_type=6, + label=1, + has_default_value=False, + default_value=float(0), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='visible', + full_name='keypose.Target.KeyPoint.visible', + index=5, + number=6, + type=2, + cpp_type=6, + label=1, + has_default_value=True, + default_value=float(1), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + ], + extensions=[], + nested_types=[], + enum_types=[], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[], + serialized_start=285, + serialized_end=370, +) + +_TARGET = _descriptor.Descriptor( + name='Target', + full_name='keypose.Target', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='transform', + full_name='keypose.Target.transform', + index=0, + number=1, + type=11, + cpp_type=10, + label=1, + has_default_value=False, + default_value=None, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='camera', + full_name='keypose.Target.camera', + index=1, + number=2, + type=11, + cpp_type=10, + label=1, + has_default_value=False, + default_value=None, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='keypoints', + full_name='keypose.Target.keypoints', + index=2, + number=3, + type=11, + cpp_type=10, + label=3, + has_default_value=False, + default_value=[], + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + ], + extensions=[], + nested_types=[ + _TARGET_KEYPOINT, + ], + enum_types=[], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[], + serialized_start=158, + serialized_end=370, +) + +_KEYTARGETS = _descriptor.Descriptor( + name='KeyTargets', + full_name='keypose.KeyTargets', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='kp_target', + full_name='keypose.KeyTargets.kp_target', + index=0, + number=1, + type=11, + cpp_type=10, + label=1, + has_default_value=False, + default_value=None, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='proj_targets', + full_name='keypose.KeyTargets.proj_targets', + index=1, + number=2, + type=11, + cpp_type=10, + label=3, + has_default_value=False, + default_value=[], + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='mirrored', + full_name='keypose.KeyTargets.mirrored', + index=2, + number=3, + type=8, + cpp_type=7, + label=1, + has_default_value=True, + default_value=False, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + ], + extensions=[], + nested_types=[], + enum_types=[], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[], + serialized_start=372, + serialized_end=484, +) + +_DATAPARAMS = _descriptor.Descriptor( + name='DataParams', + full_name='keypose.DataParams', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='resx', + full_name='keypose.DataParams.resx', + index=0, + number=1, + type=5, + cpp_type=1, + label=1, + has_default_value=False, + default_value=0, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='resy', + full_name='keypose.DataParams.resy', + index=1, + number=2, + type=5, + cpp_type=1, + label=1, + has_default_value=False, + default_value=0, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='num_kp', + full_name='keypose.DataParams.num_kp', + index=2, + number=3, + type=5, + cpp_type=1, + label=1, + has_default_value=False, + default_value=0, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='camera', + full_name='keypose.DataParams.camera', + index=3, + number=4, + type=11, + cpp_type=10, + label=1, + has_default_value=False, + default_value=None, + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + ], + extensions=[], + nested_types=[], + enum_types=[], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[], + serialized_start=486, + serialized_end=575, +) + +_TFSET = _descriptor.Descriptor( + name='TfSet', + full_name='keypose.TfSet', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='name', + full_name='keypose.TfSet.name', + index=0, + number=1, + type=9, + cpp_type=9, + label=1, + has_default_value=False, + default_value=b''.decode('utf-8'), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='common_dir', + full_name='keypose.TfSet.common_dir', + index=1, + number=2, + type=9, + cpp_type=9, + label=1, + has_default_value=False, + default_value=b''.decode('utf-8'), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='train', + full_name='keypose.TfSet.train', + index=2, + number=3, + type=9, + cpp_type=9, + label=3, + has_default_value=False, + default_value=[], + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='val', + full_name='keypose.TfSet.val', + index=3, + number=4, + type=9, + cpp_type=9, + label=3, + has_default_value=False, + default_value=[], + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='exclude', + full_name='keypose.TfSet.exclude', + index=4, + number=5, + type=9, + cpp_type=9, + label=3, + has_default_value=False, + default_value=[], + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='image_size', + full_name='keypose.TfSet.image_size', + index=5, + number=6, + type=9, + cpp_type=9, + label=1, + has_default_value=False, + default_value=b''.decode('utf-8'), + message_type=None, + enum_type=None, + containing_type=None, + is_extension=False, + extension_scope=None, + serialized_options=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key), + ], + extensions=[], + nested_types=[], + enum_types=[], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[], + serialized_start=577, + serialized_end=683, +) + +_TARGET_KEYPOINT.containing_type = _TARGET +_TARGET.fields_by_name['transform'].message_type = _TRANSFORM +_TARGET.fields_by_name['camera'].message_type = _CAMERA +_TARGET.fields_by_name['keypoints'].message_type = _TARGET_KEYPOINT +_KEYTARGETS.fields_by_name['kp_target'].message_type = _TARGET +_KEYTARGETS.fields_by_name['proj_targets'].message_type = _TARGET +_DATAPARAMS.fields_by_name['camera'].message_type = _CAMERA +DESCRIPTOR.message_types_by_name['Transform'] = _TRANSFORM +DESCRIPTOR.message_types_by_name['Camera'] = _CAMERA +DESCRIPTOR.message_types_by_name['Target'] = _TARGET +DESCRIPTOR.message_types_by_name['KeyTargets'] = _KEYTARGETS +DESCRIPTOR.message_types_by_name['DataParams'] = _DATAPARAMS +DESCRIPTOR.message_types_by_name['TfSet'] = _TFSET +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +Transform = _reflection.GeneratedProtocolMessageType( + 'Transform', + (_message.Message,), + { + 'DESCRIPTOR': _TRANSFORM, + '__module__': 'data_pb2' + # @@protoc_insertion_point(class_scope:keypose.Transform) + }) +_sym_db.RegisterMessage(Transform) + +Camera = _reflection.GeneratedProtocolMessageType( + 'Camera', + (_message.Message,), + { + 'DESCRIPTOR': _CAMERA, + '__module__': 'data_pb2' + # @@protoc_insertion_point(class_scope:keypose.Camera) + }) +_sym_db.RegisterMessage(Camera) + +Target = _reflection.GeneratedProtocolMessageType( + 'Target', + (_message.Message,), + { + 'KeyPoint': + _reflection.GeneratedProtocolMessageType( + 'KeyPoint', + (_message.Message,), + { + 'DESCRIPTOR': _TARGET_KEYPOINT, + '__module__': 'data_pb2' + # @@protoc_insertion_point(class_scope:keypose.Target.KeyPoint) + }), + 'DESCRIPTOR': + _TARGET, + '__module__': 'data_pb2' + # @@protoc_insertion_point(class_scope:keypose.Target) + }) +_sym_db.RegisterMessage(Target) +_sym_db.RegisterMessage(Target.KeyPoint) + +KeyTargets = _reflection.GeneratedProtocolMessageType( + 'KeyTargets', + (_message.Message,), + { + 'DESCRIPTOR': _KEYTARGETS, + '__module__': 'data_pb2' + # @@protoc_insertion_point(class_scope:keypose.KeyTargets) + }) +_sym_db.RegisterMessage(KeyTargets) + +DataParams = _reflection.GeneratedProtocolMessageType( + 'DataParams', + (_message.Message,), + { + 'DESCRIPTOR': _DATAPARAMS, + '__module__': 'data_pb2' + # @@protoc_insertion_point(class_scope:keypose.DataParams) + }) +_sym_db.RegisterMessage(DataParams) + +TfSet = _reflection.GeneratedProtocolMessageType( + 'TfSet', + (_message.Message,), + { + 'DESCRIPTOR': _TFSET, + '__module__': 'data_pb2' + # @@protoc_insertion_point(class_scope:keypose.TfSet) + }) +_sym_db.RegisterMessage(TfSet) + +# @@protoc_insertion_point(module_scope) diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/download_models.sh b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/download_models.sh new file mode 100644 index 0000000000000000000000000000000000000000..88aee73f7b91a30a34f8ddebb4e3875a62d21c38 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/download_models.sh @@ -0,0 +1,18 @@ +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#!/bin/bash + +wget https://storage.googleapis.com/keypose-transparent-object-dataset/models.zip +unzip -o models.zip -d keypose diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/estimator.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/estimator.py new file mode 100644 index 0000000000000000000000000000000000000000..85fa1caf6a02f97f27cacc06492058f832084b3d --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/estimator.py @@ -0,0 +1,192 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Estimator definition using Keras and TF2. + +Adapted from 'Discovery of Latent 3D Keypoints via End-to-end +Geometric Reasoning' keypoint network. + +Given a 2D image and viewpoint, predict a set of 3D keypoints that +match the target examples. + +Can be instance or class specific, depending on training set. +""" + +import tensorflow as tf +from tensorflow import estimator as tf_estimator + +from keypose import losses as ls +from keypose import nets + + +def make_decay_function(step, lr_list): + """Decay function, stepwise linear from 0.1 to 0.01 of max lr. + + Args: + step: training step. + lr_list: [start_decay, end_decay, rate_0, rate_1, ...] + + Returns: + lr_func: decayed lr function. + lambda: 10-4 * lr_func() + """ + + start, end = lr_list[0], lr_list[1] + lr_seq = lr_list[2:] + seq_num = float(len(lr_seq) - 1) + seq_len = float(end - start) / seq_num + + def decayed_lr(): + if step < start: + return lr_seq[0] + elif step > end: + return lr_seq[-1] + else: + step_trunc = tf.cast(step - start, tf.float32) + num = tf.cast(step_trunc / seq_len, tf.int64) + lr_start = tf.gather(lr_seq, num) + lr_end = tf.gather(lr_seq, num + 1) + step_start = tf.cast(num, tf.float32) * seq_len + alpha = (step_trunc - step_start) / seq_len + return alpha * lr_end + (1.0 - alpha) * lr_start + + lr_func = tf.function(func=decayed_lr) + return lr_func, lambda: 1e-4 * lr_func() + + +def est_model_fn(features, labels, mode, params): + """Model function for the estimator. + + Args: + features: features from tfrecords. + labels: labels from tfrecords. + mode: train or eval. + params: ConfigParams for the model. + + Returns: + EstimatorSpec for the model. + """ + print('In est_model_fn') + + is_training = (mode == tf_estimator.ModeKeys.TRAIN) + + step = tf.compat.v1.train.get_or_create_global_step() + print('Step is:', step) + print('Mode is:', mode, is_training) + # print('labels is:', labels) + + mparams = params.model_params + model = nets.keypose_model(mparams, is_training) + # print('Features:\n', features) + preds = model(features, training=is_training) + print('Symbolic predictions:\n', preds) + + if mode == tf_estimator.ModeKeys.PREDICT: + print('Model_fn is returning from prediction mode') + return tf_estimator.EstimatorSpec(mode=mode, predictions=preds) + + # Get both the unconditional losses (the None part) + # and the input-conditional losses (the features part). + reg_losses = model.get_losses_for(None) + model.get_losses_for(features) + # Custom loss here. + print('Calling loss fn') + print('Reg losses:', reg_losses) + if reg_losses: + reg_loss = tf.math.add_n(reg_losses) + else: + reg_loss = 0.0 + print('Reg losses summed:', reg_loss) + + kp_loss, uvdw, xyzw = ls.keypose_loss(labels, preds, step, mparams) + total_loss = kp_loss + mparams.loss_reg * reg_loss + print('Total loss:', total_loss) + print('End calling loss fn') + + # Metrics from tf.keras.metrics, for eval only. + mae_disp_obj = tf.keras.metrics.Mean(name='MAE_disp') + mae_disp_obj.update_state(ls.disp_error(labels, uvdw, mparams)) + mae_uv_obj = tf.keras.metrics.Mean(name='MAE_uv') + mae_uv_obj.update_state(ls.uv_error(labels, uvdw, mparams)) + mae_world_obj = tf.keras.metrics.Mean(name='0_MAE_world') + mae_world_obj.update_state(ls.world_error(labels, xyzw)) + mae_2cm_obj = tf.keras.metrics.Mean(name='MAE_2cm') + mae_2cm_obj.update_state(ls.lt_2cm_error(labels, xyzw)) + metric_ops = { + 'MAE_disp': mae_disp_obj, + 'MAE_uv': mae_uv_obj, + 'MAE_2cm': mae_2cm_obj, + '0_MAE_world': mae_world_obj + } + + # Training stats - these correspond to the eval metrics. + # Don't know how to use v2 summaries here. + tf.compat.v1.summary.image( + 'viz_img_L', + ls.add_keypoints(features['img_L'], preds['uvd']), + max_outputs=4) + tf.compat.v1.summary.image( + 'viz_probs', + tf.expand_dims(tf.reduce_max(preds['prob'], axis=1), axis=-1), + max_outputs=4) + tf.compat.v1.summary.scalar( + 'MAE_disp', tf.reduce_mean(ls.disp_error(labels, uvdw, mparams))) + tf.compat.v1.summary.scalar( + 'MAE_uv', tf.reduce_mean(ls.uv_error(labels, uvdw, mparams))) + tf.compat.v1.summary.scalar('0_MAE_world', + tf.reduce_mean(ls.world_error(labels, xyzw))) + tf.compat.v1.summary.scalar('MAE_2cm', + tf.reduce_mean(ls.lt_2cm_error(labels, xyzw))) + # TODO(konolige): Add re-ordered prob loss back in. + # tf.compat.v1.summary.scalar('Prob_loss', + # tf.reduce_mean(ls.keypose_loss_prob(preds['prob'], labels))) + if is_training: + tf.compat.v1.summary.scalar( + 'Adjust_proj', ls.adjust_proj_factor(step, mparams.loss_proj_step)) + + train_op = None + if is_training: + # Using tf.keras.optimizers. + # NOTE: unlike in the V2 docs, lr_func is a zero-arg function that + # must access the optimizer step itself, rather than having it passed in. + # decay param in Adam is 1 / (1 + decay * step). Use custom decay. + lr_func, _ = make_decay_function(step, params.learning_rate) + + optimizer = tf.keras.optimizers.Adam( + learning_rate=lr_func, epsilon=1e-8, decay=0.0, clipnorm=5.0) + + # Manually assign tf.compat.v1.global_step variable to optimizer.iterations + # to make tf.compat.v1.train.global_step increase correctly. + # This assignment is a must for any `tf.train.SessionRunHook` specified in + # estimator, as SessionRunHooks rely on global step. + optimizer.iterations = step + # Get both the unconditional updates (the None part) + # and the input-conditional updates (the features part). + update_ops = model.get_updates_for(None) + model.get_updates_for(features) + # Compute the minimize_op. + + print(tf.compat.v1.global_variables(scope='batch')) + train_vars = model.trainable_variables + print('Trainable vars:\n', train_vars) + print('Trainable flags:\n', [(x.name, x.trainable) for x in train_vars]) + minimize_op = optimizer.get_updates(total_loss, train_vars)[0] + train_op = tf.group(minimize_op, *update_ops) + tf.compat.v1.summary.scalar('Learning_rate', optimizer.lr) + + return tf_estimator.EstimatorSpec( + mode=mode, + predictions=preds, + loss=total_loss, + train_op=train_op, + eval_metric_ops=metric_ops) diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/gen_tfrecords.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/gen_tfrecords.py new file mode 100644 index 0000000000000000000000000000000000000000..22873fc2b5ec20ab3857f6c2a01f9acacb7cfb82 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/gen_tfrecords.py @@ -0,0 +1,317 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""A script to generate a tfrecord file from a folder containing the renderings. + +See data.proto for protobuf definitions. + +Format of the files in the folder: +1. Stereo images, with filenames ######_L/R.png + - Format is RGBA, where the alpha channel indicates the object mask, if + available. + - Right images may be missing, for non-stereo data. + +2. Camera / object transform and keypoints for each stereo pair in + "######_L/R.pbtxt" + - Protobuf (in text format) containing the transform, camera, and kps + - 4x4 Transform takes 3D points in homogeneous form from the object to the + camera frame. + - Camera parameters containing focal length, center, + stereo displacement. + - Cameras are assumed to be rectified and aligned, with the same camera + matrix. + - Keypoints are ordered, and all files should have the same number of + keypoints. If a keypoint is to be skipped, it should be [-1, -1] + +4. Target image camera / object transform and keypoints in files + "target###.pbtxt" + +Example usage (from directory above keypose/): + python3 -m keypose.gen_tfrecords configs/tfset_bottle_0_t5 +""" +import glob +import os +import shutil +import sys + +import numpy as np +import tensorflow as tf + +from keypose import utils + + +def bytes_feature(values): + return tf.train.Feature(bytes_list=tf.train.BytesList(value=[values])) + + +def generate_tfrecords(image_dirs, resize_str, params, num_samples_per_rec=20): + """Generate tfrecords in the image directories. + + tfrecords are of the form NNNN.tfrecord, in a tfrecord/ subdir. + Images are resized according to params. + + Args: + image_dirs: directories with image files. + resize_str: subdir based on image resizing, e.g., 756x424_fl400. + params: DataParams for the image size and camera. + num_samples_per_rec: number of samples per tfrecord. + """ + print('Image folders:', image_dirs) + + # Iterate over image folders, processing each. + cam = params.camera + for image_dir in image_dirs: + print('Processing folder %s' % image_dir) + # Get data params, set new ones. + _, _, num_kp, cam_orig = utils.read_data_params( + os.path.join(image_dir, 'data_params.pbtxt')) + cam.baseline = cam_orig.baseline + params.num_kp = num_kp + out_dir = os.path.join(image_dir, resize_str) + os.makedirs(out_dir, exist_ok=True) + utils.write_to_text_file(os.path.join(out_dir, 'data_params.pbtxt'), params) + + # Read image files and generate tfrecords. + filenames_left = glob.glob(os.path.join(image_dir, '*_L.png')) + filenames_right = glob.glob(os.path.join(image_dir, '*_R.png')) + filenames_target_left = glob.glob(os.path.join(image_dir, '*_L.pbtxt')) + filenames_target_right = glob.glob(os.path.join(image_dir, '*_R.pbtxt')) + if not filenames_right: + filenames_right = filenames_left + filenames_target_right = filenames_target_left + else: + print('Have stereo images') + assert len(filenames_left) == len(filenames_target_left) + assert len(filenames_target_left) == len(filenames_target_right) + assert len(filenames_left) == len(filenames_right) + filenames_left.sort() + filenames_right.sort() + filenames_target_left.sort() + filenames_target_right.sort() + total = len(filenames_left) + print('Found %d total image examples' % total) + + j = 0 + while j < total: + jj = min(total, j + num_samples_per_rec) + record_name = ('%04d' % j) + '.tfrecord' + print('Record file %s' % record_name) + path = os.path.join(out_dir, record_name) + print('Generating examples %d to %d' % (j, jj)) + generate(path, cam_orig, cam, filenames_left[j:jj], filenames_right[j:jj], + filenames_target_left[j:jj], filenames_target_right[j:jj]) + j = jj + + +def generate(path, cam_orig, cam_new, fnames_left, fnames_right, + fnames_target_left, fnames_target_right): + """Generate tfrecords for a set of images and their metadata.""" + with tf.io.TFRecordWriter(path) as tfrecord_writer: + with tf.Graph().as_default(): + im0 = tf.compat.v1.placeholder(dtype=tf.uint8) + im1 = tf.compat.v1.placeholder(dtype=tf.uint8) + encoded0 = tf.image.encode_png(im0) + encoded1 = tf.image.encode_png(im1) + + with tf.compat.v1.Session() as sess: + for fleft, fright, ftleft, ftright in zip(fnames_left, fnames_right, + fnames_target_left, + fnames_target_right): + assert (os.path.basename( + os.path.splitext(fleft)[0]) == os.path.basename( + os.path.splitext(ftleft)[0])) + assert (os.path.basename( + os.path.splitext(fright)[0]) == os.path.basename( + os.path.splitext(ftright)[0])) + print(fleft) + image_left = utils.read_image(fleft) + image_right = utils.read_image(fright) + targs_left = utils.read_target_pb(ftleft) + targs_right = utils.read_target_pb(ftright) + image_left = utils.resize_image(image_left, cam_new, cam_orig, + targs_left) + image_right = utils.resize_image(image_right, cam_new, cam_orig, + targs_right) + st0, st1 = sess.run([encoded0, encoded1], + feed_dict={ + im0: image_left, + im1: image_right + }) + feats = {'img_L': bytes_feature(st0), 'img_R': bytes_feature(st1)} + feats.update(make_features(targs_left, 'L')) + feats.update(make_features(targs_right, 'R')) + example = tf.train.Example(features=tf.train.Features(feature=feats)) + tfrecord_writer.write(example.SerializeToString()) + + +def make_features(targs_pb, pf): + """Make tfrecord featurs from image metadata.""" + camera, to_uvd, to_world, keys_uvd, _, visible, _ = utils.get_contents_pb( + targs_pb.kp_target) + num_kp = len(keys_uvd) + # Restrict to max projection targets + proj_targs = [ + utils.get_contents_pb(targ_pb) for targ_pb in targs_pb.proj_targets + ][:utils.MAX_TARGET_FRAMES] + targets_keys_uvd = [] + targets_to_uvd = [] + for proj_targ in proj_targs: + _, to_uvd, _, keys_uvd, _, _, _ = proj_targ + targets_keys_uvd.append(keys_uvd) + targets_to_uvd.append(to_uvd) + # Add dummy targets if necessary. + num_targets = len(proj_targs) + for _ in range(utils.MAX_TARGET_FRAMES - num_targets): + targets_keys_uvd.append(utils.dummy_keys_uvd(num_kp)) + targets_to_uvd.append(utils.dummy_to_uvd()) + + def feat_int(num): + return tf.train.Feature(int64_list=tf.train.Int64List(value=[num])) + + def feat_floats(floats): + return tf.train.Feature(float_list=tf.train.FloatList(value=floats)) + + feats = { + 'to_world_' + pf: + feat_floats(to_world.flatten()), + 'to_uvd_' + pf: + feat_floats(to_uvd.flatten()), + 'camera_' + pf: + feat_floats(utils.cam_pb_to_array(camera)), + 'keys_uvd_' + pf: + feat_floats(np.array(keys_uvd).flatten()), + 'visible_' + pf: + feat_floats(visible), + 'num_kp_' + pf: + feat_int(num_kp), + 'num_targets_' + pf: + feat_int(num_targets), + 'targets_to_uvd_' + pf: + feat_floats(np.array(targets_to_uvd).flatten()), + 'targets_keys_uvd_' + pf: + feat_floats(np.array(targets_keys_uvd).flatten()), + 'mirrored': + feat_int(int(targs_pb.mirrored)), + } + return feats + + +def group_tfrecords(train_dirs, val_dirs, tfset, data_params): + """Group all relevant tfrecords into a new tfrecord/ directory.""" + out_dir = os.path.join(utils.KEYPOSE_PATH, + os.path.join('tfrecords', tfset.name)) + records_out_dir = os.path.join(out_dir, 'tfrecords') + os.makedirs(records_out_dir, exist_ok=True) + + start = 0 + train_names = [] + for dr in train_dirs: + tfrecord_dir = os.path.join(dr, tfset.image_size) + for tfname in glob.glob(os.path.join(tfrecord_dir, '*.tfrecord')): + rname = ('%04d' % start) + '.tfrecord' + fname = os.path.join(records_out_dir, rname) + start += 1 + print('Copying %s to %s' % (tfname, fname)) + shutil.copy(tfname, fname) + train_names.append(rname) + + val_names = [] + for dr in val_dirs: + tfrecord_dir = os.path.join(dr, tfset.image_size) + for tfname in glob.glob(os.path.join(tfrecord_dir, '*.tfrecord')): + rname = ('%04d' % start) + '.tfrecord' + fname = os.path.join(records_out_dir, rname) + start += 1 + print('Copying %s to %s' % (tfname, fname)) + shutil.copy(tfname, fname) + val_names.append(rname) + + tfset_pb = utils.make_tfset(train_names, val_names, tfset.name) + utils.write_to_text_file( + os.path.join(records_out_dir, 'tfset.pbtxt'), tfset_pb) + utils.write_to_text_file( + os.path.join(records_out_dir, 'data_params.pbtxt'), data_params) + utils.write_to_text_file(os.path.join(out_dir, 'tfset_def.pbtxt'), tfset) + + +# Exclude directories from a list. +def exclude_dirs(dirs, exclude): + return [dir for dir in dirs if dir not in exclude] + + +def main(argv): + if not len(argv) >= 2: + print( + 'Usage: ./trainer.py [tfset_only]' + ) + exit(0) + + config_file = argv[1] + tfset_only = False + if len(argv) > 2: + if argv[2] == 'tfset_only': + tfset_only = True + else: + print('Second argument must be tfset_only') + exit(0) + + # Check for tfset file. + fname = os.path.join(utils.KEYPOSE_PATH, config_file + '.pbtxt') + tfset = utils.read_tfset(fname) + common_dir = tfset.common_dir + print('common dir:', common_dir) + print('train:', tfset.train) + print('val:', tfset.val) + print('exclude:', tfset.exclude) + + common_dir = os.path.join(utils.KEYPOSE_PATH, common_dir) + # pylint: disable=g-complex-comprehension + train_dirs = [ + dr for tfdir in tfset.train + for dr in glob.glob(os.path.join(common_dir, tfdir)) + ] + val_dirs = [ + dr for tfdir in tfset.val + for dr in glob.glob(os.path.join(common_dir, tfdir)) + ] + exc_dirs = [ + dr for tfdir in tfset.exclude + for dr in glob.glob(os.path.join(common_dir, tfdir)) + ] + train_dirs = exclude_dirs(train_dirs, exc_dirs) + val_dirs = exclude_dirs(val_dirs, exc_dirs) + train_dirs = exclude_dirs(train_dirs, val_dirs) + train_dirs.sort() + val_dirs.sort() + all_dirs = train_dirs + val_dirs + all_dirs.sort() + + # Set up data_params for the new image size. + size, focal_length = tfset.image_size.split('_') + resx, resy = size.split('x') + resx = int(resx) + resy = int(resy) + fx = int(focal_length[2:]) + cam = utils.cam_array_to_pb([fx, fx, resx / 2, resy / 2, 0.0, resx, resy]) + data_params = utils.make_data_params(resx, resy, 0, cam) + + if not tfset_only: + generate_tfrecords(all_dirs, tfset.image_size, data_params) + + group_tfrecords(train_dirs, val_dirs, tfset, data_params) + + +if __name__ == '__main__': + main(sys.argv) diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/inputs.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/inputs.py new file mode 100644 index 0000000000000000000000000000000000000000..e410db2fa9050666e9b3bd823ef3a25c2c950d9f --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/inputs.py @@ -0,0 +1,458 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Dataset input functions for KeyPose estimator.""" + +import glob +import os + +import numpy as np +import tensorflow as tf + +from keypose import utils + + +def get_tfrecords(dset_dir, split='train'): + """Get tfrecords that match training, validation, and test sets. + + Works off the TfSet protobuf. + + Args: + dset_dir: dataset directory of tfrecords. + split: train or eval. + + Returns: + Relevant tfrecords from dset_dir. + + Raises: + IOError: if tfset.pbtxt protobuf file not found. + """ + tfset_fname = os.path.join(dset_dir, 'tfset.pbtxt') + if not os.path.isfile(tfset_fname): + raise IOError('%s not found' % tfset_fname) + tfset_pb = utils.read_tfset(tfset_fname) + + fnames = [] + if split == 'train': + fnames = tfset_pb.train + elif split == 'val': + fnames = tfset_pb.val + elif split == 'test': + fnames = tfset_pb.test + elif split == 'all': + fnames = glob.glob(os.path.join(dset_dir, '*.tfrecord')) + print('Found %d tfrecord files' % len(fnames)) + return fnames + + return [os.path.join(dset_dir, f) for f in fnames] + + +# Return True if all kps are visible. +def filter_nonvisible(_, labels): + """Check visibility of keypoints. + + Args: + labels: labels of the tfrecord. + + Returns: + True if all keypoints are visible. + """ + visible = labels['visible_L'] + isallowed = tf.equal(visible, tf.constant(0.)) + reduced = tf.reduce_sum(tf.cast(isallowed, tf.float32)) + visible_r = labels['visible_R'] + isallowed_r = tf.equal(visible_r, tf.constant(0.)) + reduced_r = tf.reduce_sum(tf.cast(isallowed_r, tf.float32)) + return tf.equal(tf.add(reduced, reduced_r), tf.constant(0.)) + + +def permute_order(tensor, order, mask, is_target=False): + """Reduces of shape [order, ...] by picking out order dim. + + Args: + tensor: input tensor, with orderings. + order: order permutation. + mask: which order to use. + is_target: True if tensor is a target (???). + + Returns: + Reduced tensor. + """ + if is_target: + tensor = tf.stack( + # order is list of lists, so pylint: disable=not-an-iterable + [tf.stack([tensor[:, x, Ellipsis] for x in ord], axis=1) for ord in order], + axis=1) + res = tf.multiply(tensor, mask) + return tf.reduce_sum(res, axis=1) + else: + tensor = tf.stack( + # order is list of lists, so pylint: disable=not-an-iterable + [tf.stack([tensor[x, Ellipsis] for x in ord], axis=0) for ord in order], + axis=0) + res = tf.multiply(tensor, mask) + return tf.reduce_sum(res, axis=0) + + +def parser(serialized_example, resx, resy, num_kp, sym=None, return_float=True): + """Parses a single tf.Example into image and label tensors. + + Args: + serialized_example: tfrecord sample. + resx: image x resolution, pixels. + resy: image y resolution, pixles. + num_kp: number of keypoints. + sym: list representing keypoint symmetry. + return_float: True if we want a floating-point return. + + Returns: + Feature set. + """ + if sym is None: + sym = [0] + fs = tf.io.parse_single_example( + serialized_example, + features={ + 'img_L': + tf.io.FixedLenFeature([], tf.string), + 'img_R': + tf.io.FixedLenFeature([], tf.string), + 'to_world_L': + tf.io.FixedLenFeature([4, 4], tf.float32), + 'to_world_R': + tf.io.FixedLenFeature([4, 4], tf.float32), + 'to_uvd_L': + tf.io.FixedLenFeature([4, 4], tf.float32), + 'to_uvd_R': + tf.io.FixedLenFeature([4, 4], tf.float32), + 'camera_L': + tf.io.FixedLenFeature([7], tf.float32), + 'camera_R': + tf.io.FixedLenFeature([7], tf.float32), + 'keys_uvd_L': + tf.io.FixedLenFeature([num_kp, 4], tf.float32), + 'keys_uvd_R': + tf.io.FixedLenFeature([num_kp, 4], tf.float32), + 'visible_L': + tf.io.FixedLenFeature([num_kp], tf.float32), + 'visible_R': + tf.io.FixedLenFeature([num_kp], tf.float32), + 'num_kp_L': + tf.io.FixedLenFeature([], tf.int64), + 'num_kp_R': + tf.io.FixedLenFeature([], tf.int64), + 'num_targets_L': + tf.io.FixedLenFeature([], tf.int64), + 'num_targets_R': + tf.io.FixedLenFeature([], tf.int64), + 'mirrored': + tf.io.FixedLenFeature([], tf.int64), + 'targets_to_uvd_L': + tf.io.FixedLenFeature([utils.MAX_TARGET_FRAMES, 4, 4], + tf.float32), + 'targets_to_uvd_R': + tf.io.FixedLenFeature([utils.MAX_TARGET_FRAMES, 4, 4], + tf.float32), + 'targets_keys_uvd_L': + tf.io.FixedLenFeature([utils.MAX_TARGET_FRAMES, num_kp, 4], + tf.float32), + 'targets_keys_uvd_R': + tf.io.FixedLenFeature([utils.MAX_TARGET_FRAMES, num_kp, 4], + tf.float32), + }) + + fs['img_L'] = tf.image.decode_png(fs['img_L'], 4) + if return_float: + fs['img_L'] = tf.image.convert_image_dtype(fs['img_L'], tf.float32) + fs['img_R'] = tf.image.decode_png(fs['img_R'], 4) + if return_float: + fs['img_R'] = tf.image.convert_image_dtype(fs['img_R'], tf.float32) + + fs['img_L'].set_shape([resy, resx, 4]) + fs['img_R'].set_shape([resy, resx, 4]) + + # Check for randomizing keypoint symmetry order. + if len(sym) > 1: + order = utils.make_order(sym, num_kp) + mask = [0.0 for x in sym] + mask[0] = 1.0 + mask = tf.random.shuffle(mask) # [order] + mask2 = tf.expand_dims(mask, -1) # [order, 1] + mask2 = tf.expand_dims(mask2, -1) # [order, 1, 1] + mask3 = tf.stack( + [mask2] * utils.MAX_TARGET_FRAMES, axis=0) # [targets, order, 1, 1] + fs['keys_uvd_L'] = permute_order(fs['keys_uvd_L'], order, mask2) + fs['keys_uvd_R'] = permute_order(fs['keys_uvd_R'], order, mask2) + fs['targets_keys_uvd_L'] = permute_order(fs['targets_keys_uvd_L'], order, + mask3, True) + fs['targets_keys_uvd_R'] = permute_order(fs['targets_keys_uvd_R'], order, + mask3, True) + print('Targets to_uvd shape [num_targs, 4, 4]:', fs['targets_to_uvd_L'].shape) + print('Targets keys_uvd shape [num_targs, num_kp, 4]:', + fs['targets_keys_uvd_L'].shape) + + return fs + + +def create_input_fn(params, + split='val', + keep_order=False, + filenames=None, + late_fusion=False): + """Returns input_fn for tf.estimator.Estimator. + + Reads tfrecords and constructs input_fn for either training or eval. All + tfrecords not in val.txt will be assigned to training set. + train.txt and val.txt have the base filenames for their tfrecords, one per + line. + + Args: + params: ConfigParams structure. There are various elements used -- + keep_order - True if order of images should be preserved. dset_dir - + Directory containing tfrecord data of original images. batch_size - The + batch size! occ_fraction - Fraction of object to occlude. noise - Random + noise to add to an image, in pixel values; (a,b) is bounds. blur - Random + gaussian blur to add, sigma in pixels (low, high). motion - Random motion + blur to add (move_pixels_min, move_pixels_max, angle_deg_min, + angle_deg_max). rot - (rotx, roty, rotz) for camera in degrees. gamma - + Gamma value to modify image; (a,b) is bounds. num_kp - Number of + keypoints. + resx, resy - Size of input images. NB: using 'crop' causes output size to + change. crop - Crop image and offset right crop, e.g., [280, 180, 20]. + sym - keypoint symmetry list, [0] is no symmetry. kp_occ_radius - Radius + (m) around a keypoint for occlusion. + split: A string indicating the split. Can be either 'train' or 'val'. + keep_order: keep tfrecord order, for prediction of a sequence. + filenames: set of tfrecord filenames. + late_fusion: True if left / right images are handled separately by the net. + + Returns: + input_fn for tf.estimator.Estimator. + + Raises: + IOError: If val.txt is not found. + """ + + print('Input function called for split <%s>' % split) + + mparams = params.model_params + dset_dir = params.dset_dir + batch_size = params.batch_size + occ_fraction = mparams.occ_fraction + noise = mparams.noise + blur = mparams.blur + motion = mparams.motion + rotation = mparams.rot + gamma = mparams.gamma + num_kp = mparams.num_kp + resx = mparams.resx + resy = mparams.resy + crop = mparams.crop + shear = mparams.shear + scale = mparams.scale + flip = mparams.flip + sym = mparams.sym + input_sym = mparams.input_sym + dither = mparams.dither + visible_only = mparams.visible + + if not filenames: + filenames = get_tfrecords(dset_dir, split) + if not filenames: + raise IOError('No tfrecord files found!') + print('Found %d files' % len(filenames)) + bg_filenames = [''] # No filename, just use a dummy image. + + def input_fn(): + """input_fn for tf.estimator.Estimator.""" + + def zip_parser(sample, bg_filename): + """Modifies the input training images. + + Args: + sample: A dict of features from the TFRecord files. + bg_filename: A string, filename of a background scene. + + Returns: + A sample with the images modified by image augmentation. + """ + image = sample['img_L'] + image2 = sample['img_R'] + rgba_shape = image.get_shape() + final_shape = rgba_shape + to_world = sample['to_world_L'] + to_world = tf.reshape(to_world, [4, 4]) + keys_uvd = sample['keys_uvd_L'] + keys_uvd = tf.reshape(keys_uvd, [-1, 4]) + visible = sample['visible_L'] + keys_uvd_r = sample['keys_uvd_R'] + keys_uvd_r = tf.reshape(keys_uvd_r, [-1, 4]) + camera = sample['camera_L'] + mirrored = sample['mirrored'] + # uvd offset based on cropping. + sample['offsets'] = tf.constant([0.0, 0.0, 0.0]) + + # Causes issues for rotation (keypoint changes). + if split == 'train' and (rotation[0] or rotation[1] or rotation[2]): + # Random rotation around camera center. + + image, image2, transform, keys_uvd, visible = tf.numpy_function( + func=utils.do_rotation, + inp=[image, image2, to_world, camera, keys_uvd, visible, rotation], + Tout=[tf.float32, tf.float32, tf.float32, tf.float32, tf.float32]) + image.set_shape(rgba_shape) + image2.set_shape(rgba_shape) + transform.set_shape(to_world.get_shape()) + keys_uvd.set_shape(keys_uvd.get_shape()) + visible.set_shape(sample['visible_L'].get_shape()) + sample['to_world_L'] = transform + sample['keys_uvd_L'] = keys_uvd + else: + image = utils.image_uint8_to_float(image) + image2 = utils.image_uint8_to_float(image2) + + final_shape = [crop[1], crop[0], 4] + # Will filter if visible returns a 0. + image, image2, offsets, visible = tf.numpy_function( + func=utils.do_occlude_crop, + inp=[ + image, image2, keys_uvd, keys_uvd_r, crop, visible, dither, + late_fusion + ], + Tout=[tf.float32, tf.float32, tf.float32, tf.float32]) + sample['offsets'] = offsets + sample['visible_L'] = visible + image.set_shape(final_shape) + image2.set_shape(final_shape) + if occ_fraction and split == 'train': + image, image2 = tf.numpy_function( + func=utils.do_occlude, + inp=[image, image2, occ_fraction], + Tout=[tf.float32, tf.float32]) + image.set_shape(final_shape) + image2.set_shape(final_shape) + + # Check for mirrored sample. + image, image2, hom = tf.numpy_function( + func=utils.do_vertical_flip, + inp=[image, image2, mirrored], + Tout=[tf.float32, tf.float32, tf.float32]) + image.set_shape(final_shape) + image2.set_shape(final_shape) + hom.set_shape((3, 3)) + + # 2D geometric transform. + image, image2, hom = tf.numpy_function( + func=utils.do_2d_homography, + inp=[image, image2, scale, shear, flip, mirrored, split], + Tout=[tf.float32, tf.float32, tf.float32]) + image.set_shape(final_shape) + image2.set_shape(final_shape) + hom.set_shape((3, 3)) + + sample['hom'] = hom + + # Compute ground truth spatial probabilities. + # TODO(konolige): Make variance a parameter. + probs = tf.numpy_function( + func=utils.do_spatial_prob, + inp=[keys_uvd, hom, offsets, 20.0, crop[:2]], + Tout=tf.float32) + probs.set_shape([num_kp, final_shape[0], final_shape[1]]) + sample['prob_label'] = probs + + # Composite with background. + image = tf.numpy_function( + func=utils.do_composite, + inp=[image, '', blur, motion, (0.0, noise), + gamma], # Use gray background. + Tout=tf.float32) + # Shape is [h, w, 3] + image.set_shape((final_shape[0], final_shape[1], 3)) + image2 = tf.numpy_function( + func=utils.do_composite, + inp=[image2, bg_filename, blur, motion, (0.0, noise), gamma], + Tout=tf.float32) + # Shape is [h, w, 3] + image2.set_shape((final_shape[0], final_shape[1], 3)) + + if split == 'train': + # Introduce photometric randomness for generalization. + brightness = 32.0 + contrast = (0.7, 1.2) + image = tf.image.random_hue(image, max_delta=0.1) + image = tf.image.random_saturation(image, 0.6, 1.2) + image = tf.image.random_contrast(image, contrast[0], contrast[1]) + image = tf.image.random_brightness(image, max_delta=brightness / 255.0) + image = tf.clip_by_value(image, 0.0, 1.0) + image2 = tf.image.random_hue(image2, max_delta=0.1) + image2 = tf.image.random_saturation(image2, 0.6, 1.2) + image2 = tf.image.random_contrast(image2, contrast[0], contrast[1]) + image2 = tf.image.random_brightness( + image2, max_delta=brightness / 255.0) + image2 = tf.clip_by_value(image2, 0.0, 1.0) + + features = {} + features['img_L'] = tf.image.convert_image_dtype(image, tf.float32) + features['img_R'] = tf.image.convert_image_dtype(image2, tf.float32) + features['offsets'] = sample['offsets'] + features['hom'] = sample['hom'] + features['to_world_L'] = sample['to_world_L'] + del sample['img_L'] + del sample['img_R'] + return features, sample # That is, (features, labels) for Estimator. + + # Main code of create_input_fn here. + pcount = 8 + rcount = pcount + if split == 'train': + np.random.shuffle(filenames) + else: + filenames.sort() + + np.random.shuffle(bg_filenames) + bg_dataset = tf.data.Dataset.from_tensor_slices(bg_filenames) + bg_dataset = bg_dataset.shuffle(200).repeat() + + if keep_order: + rcount = 1 + dataset = tf.data.TFRecordDataset(filenames, num_parallel_reads=rcount) + parse_sym = sym + if len(input_sym) > 1: + parse_sym = input_sym # Mix up keypoints on input. + + def parse_it(x): + return parser(x, resx, resy, num_kp, sym=parse_sym, return_float=True) + + dataset = dataset.map(parse_it, num_parallel_calls=pcount) + + if split == 'train': + dataset = dataset.shuffle(1200) + if not keep_order: + dataset = dataset.repeat() + elif batch_size > 1 and keep_order: + dataset = dataset.flat_map( + lambda x: tf.data.Dataset.from_tensors(x).repeat(batch_size)) + + # Add a random background and composite it in. + dataset = tf.data.Dataset.zip((dataset, bg_dataset)) + dataset = dataset.map(zip_parser, num_parallel_calls=pcount) + if visible_only: + dataset = dataset.filter(filter_nonvisible) + dataset = dataset.batch(batch_size, drop_remainder=True).prefetch(buffer_size=batch_size) + + return dataset + + return input_fn diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/losses.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/losses.py new file mode 100644 index 0000000000000000000000000000000000000000..ad8e3bc287fb2f6627f9ec5362727a13ca7449da --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/losses.py @@ -0,0 +1,367 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Loss and metric definitions for KeyPose models.""" + +import numpy as np +import tensorflow as tf + +from keypose import nets + +# num_targs = inp.MAX_TARGET_FRAMES +num_targs = 5 + +# Reordering based on symmetry. + + +def make_order(sym, num_kp): + """Returns all rotations of the keypoints.""" + rots = np.array([sym[-i:] + sym[:-i] for i in range(len(sym))]) + rot_list = np.array([range(num_kp)] * len(sym)) + for i, rot in enumerate(rot_list): + rot[rots[i]] = rot_list[0][rots[0]] + return rot_list + + +def reorder(tensor, order): + """Re-orders a tensor along the num_kp dimension. + + Args: + tensor: has shape [batch, num_kp, ...] + order: permutation of keypoints. + + Returns: + shape [batch, order, num_kp, ...] + """ + return tf.stack( + # order is list of lists, so pylint: disable=not-an-iterable + [tf.stack([tensor[:, x, ...] for x in ord], axis=1) for ord in order], + axis=1) + + +def reduce_order(tensor, mask, mean=False): + res = tf.multiply(tensor, mask) + res = tf.reduce_sum(res, axis=1) + if mean: + return tf.reduce_mean(res) + else: + return res + + +# Loss functions. + + +def project(tmat, tvec, tvec_transpose=False): + """Projects homogeneous 3D XYZ coordinates to image uvd coordinates, or vv. + + Args: + tmat: has shape [[N,] batch_size, 4, 4]. + tvec: has shape [[N,] batch_size, 4, num_kp] or [batch_size, num_kp, 4]. + tvec_transpose: True if tvec is to be transposed before application. + + Returns: + Has shape [[N,] batch_size, 4, num_kp]. + """ + tp = tf.matmul(tmat, tvec, transpose_b=tvec_transpose) + # Using <3:4> instead of <3> preserves shape. + tp = tp / (tp[..., 3:4, :] + 1.0e-10) + return tp + + +def keypoint_loss_targets(uvd, keys_uvd, mparams): + """Computes the supervised keypoint loss between computed and gt keypoints. + + Args: + uvd: [batch, order, num_targs, 4, num_kp] Predicted set of keypoint uv's + (pixels). + keys_uvd: [batch, order, num_targs, 4, num_kp] The ground-truth set of uvdw + coords. + mparams: model parameters. + + Returns: + Keypoint projection loss of size [batch, order]. + """ + print('uvd shape in klt [batch, order, num_targs, 4, num_kp]:', uvd.shape) + print('keys_uvd shape in klt [batch, order, num_targs, 4, num_kp]:', + keys_uvd.shape) + keys_uvd = nets.to_norm(keys_uvd, mparams) + uvd = nets.to_norm(uvd, mparams) + + wd = tf.square(uvd[..., :2, :] - keys_uvd[..., :2, :]) + wd = tf.reduce_sum(wd, axis=[-1, -2]) # uv dist [batch, order, num_targs] + print('wd shape in klt [batch, order, num_targs]:', wd.shape) + wd = tf.reduce_mean(wd, axis=[-1]) # [batch, order] + return wd + + +# Compute the reprojection error on the target frames. +def keypose_loss_proj(uvdw_pos, labels, mparams, num_order): + """Compute the reprojection error on the target frames. + + Args: + uvdw_pos: predicted uvd, always positive. + labels: sample labels. + mparams: model parameters. + num_order: number of order permutations. + + Returns: + Scalar loss. + """ + num_kp = mparams.num_kp + to_world = labels['to_world_L'] # [batch, 4, 4] + to_world_order = tf.stack( + [to_world] * num_order, axis=1) # [batch, order, 4, 4] + to_world_order = tf.ensure_shape( + to_world_order, [None, num_order, 4, 4], name='to_world_order') + world_coords = project(to_world_order, uvdw_pos, + True) # [batch, order, 4, num_kp] + world_coords = tf.ensure_shape( + world_coords, [None, num_order, 4, num_kp], name='world_coords') + print('world_coords shape [batch, order, 4, num_kp]:', world_coords.shape) + + # Target transform and keypoints. + # [batch, num_targs, 4, 4] for transforms + # [batch, num_targs, 4, num_kp] for keypoints (after transpose) + targets_to_uvd = labels['targets_to_uvd_L'] + targets_keys_uvd = tf.transpose(labels['targets_keys_uvd_L'], [0, 1, 3, 2]) + targets_keys_uvd_order = tf.stack([targets_keys_uvd] * num_order, axis=1) + print('Model fn targets_to_uvd shape [batch, num_targs, 4, 4]:', + targets_to_uvd.shape) + print( + 'Model fn targets_keys_uvd_order shape [batch, order, num_targs, 4, ' + 'num_kp]:', targets_keys_uvd_order.shape) + + # [batch, order, num_targs, 4, num_kp] + proj_uvds = project( + tf.stack([targets_to_uvd] * num_order, axis=1), + tf.stack([world_coords] * num_targs, axis=2)) + proj_uvds = tf.ensure_shape( + proj_uvds, [None, num_order, 5, 4, num_kp], name='proj_uvds') + print('proj_uvds shape [batch, order, num_targs, 4, num_kp]:', + proj_uvds.shape) + loss_proj = keypoint_loss_targets(proj_uvds, targets_keys_uvd_order, mparams) + loss_proj = tf.ensure_shape(loss_proj, [None, num_order], name='loss_proj') + print('loss_proj shape [batch, order]:', loss_proj.shape) + return loss_proj + + +# Keypoint loss function, direct comparison of u,v,d. +# Compares them in normalized image coordinates. For some reason this +# seems to work better than pixels. +# uvdw_order: [batch, order, num_kp, 4] +# keys_uvd_order: [batch, order, num_kp, 4] +# Returns: [batch, order] +def keypose_loss_kp(uvdw_order, keys_uvd_order, mparams): + uvdw_order = nets.to_norm_vec(uvdw_order, mparams) + keys_uvd_order = nets.to_norm_vec(keys_uvd_order, mparams) + ret = tf.reduce_sum( + tf.square(uvdw_order[..., :3] - keys_uvd_order[..., :3]), + axis=[-1, -2]) # [batch, order] + return ret + + +# Probability coherence loss. +def keypose_loss_prob(prob_order, prob_label_order): + ret = tf.reduce_sum( + prob_order * prob_label_order, axis=[-1, -2]) # [batch, order] + return tf.reduce_mean(ret, axis=-1) + + +# Adjust the gain of loss_proj; return in [0,1]. +def adjust_proj_factor(step, loss_step, minf=0.0): + if loss_step[1] == 0: + return 1.0 + step = tf.cast(step, tf.float32) + return tf.maximum( + minf, + tf.minimum((step - loss_step[0]) / + tf.cast(loss_step[1] - loss_step[0], tf.float32), 1.0)) + + +# Custom loss function for the Keras model in Estimator +# Args are: +# Dict of tensors for labels, with keys_uvd, offsets. +# Tensor of raw uvd values for preds, [batch, num_kp, 3], +# order is [u,v,d]. +# Note that the loss is batched. +# This loss only works with tf Estimator, not keras models. +@tf.function +def keypose_loss(labels, preds, step, mparams, do_print=True): + """Custom loss function for the Keras model in Estimator. + + Note that the loss is batched. + This loss only works with tf Estimator, not keras models. + + Args: + labels: dict of tensors for labels, with keys_uvd, offsets. + preds: tensor of raw uvd values for preds, [batch, num_kp, 3], order is + [u,v,d]. + step: training step. + mparams: model training parameters. + do_print: True to print loss values at every step. + + Returns: + Scalar loss. + """ + num_kp = mparams.num_kp + sym = mparams.sym + order = make_order(sym, num_kp) + num_order = len(order) + + uvdw = preds['uvdw'] + uvdw_pos = preds['uvdw_pos'] + uv_pix_raw = preds['uv_pix_raw'] + prob = preds['prob'] # [batch, num_kp, resy, resx] + xyzw = tf.transpose(preds['xyzw'], [0, 2, 1]) # [batch, num_kp, 4] + + uvdw_order = reorder(uvdw, order) # [batch, order, num_kp, 4] + print('uvdw_order shape:', uvdw_order.shape) + uvdw_pos_order = reorder(uvdw_pos, order) # [batch, order, num_kp, 4] + xyzw_order = reorder(xyzw, order) # [batch, order, 4, num_kp] + print('xyzw_order shape:', xyzw_order.shape) + prob_order = reorder(prob, order) # [ batch, order, num_kp, resy, resx] + print('prob_order shape:', prob_order.shape) + + keys_uvd = labels['keys_uvd_L'] # [batch, num_kp, 4] + # [batch, order, num_kp, 4] + keys_uvd_order = tf.stack([keys_uvd] * num_order, axis=1) + + loss_kp = keypose_loss_kp(uvdw_order, keys_uvd_order, + mparams) # [batch, order] + loss_kp.set_shape([None, num_order]) + # [batch, order] + loss_proj = keypose_loss_proj(uvdw_pos_order, labels, mparams, num_order) + loss_proj.set_shape([None, num_order]) + loss_proj_adj = adjust_proj_factor(step, mparams.loss_proj_step) + + prob_label = labels['prob_label'] # [batch, num_kp, resy, resx] + # [batch, order, num_kp, resy, resx] + prob_label_order = tf.stack([prob_label] * num_order, axis=1) + loss_prob = keypose_loss_prob(prob_order, prob_label_order) + + loss_order = ( + mparams.loss_kp * loss_kp + + mparams.loss_proj * loss_proj_adj * loss_proj + + mparams.loss_prob * loss_prob) + + print('loss_order shape [batch, order]:', loss_order.shape) + loss = tf.reduce_min(loss_order, axis=1, keepdims=True) # shape [batch, 1] + print('loss shape [batch, 1]:', loss.shape) + + loss_mask = tf.cast(tf.equal(loss, loss_order), tf.float32) # [batch, order] + loss_mask3 = tf.expand_dims(loss_mask, -1) # [batch, order, 1] + loss_mask4 = tf.expand_dims(loss_mask3, -1) # [batch, order, 1, 1] + print('loss_mask shape [batch, order]:', loss_mask.shape) + + loss = tf.reduce_mean(loss) # Scalar, reduction over batch. + loss_kp = reduce_order(loss_kp, loss_mask, mean=True) + loss_proj = reduce_order(loss_proj, loss_mask, mean=True) + loss_prob = reduce_order(loss_prob, loss_mask, mean=True) + + uvdw = reduce_order(uvdw_order, loss_mask4) # [batch, num_kp, 4] + xyzw = reduce_order(xyzw_order, loss_mask4) # [batch, num_kp, 4] + print('xyzw shape:', xyzw.shape) + + if do_print: + tf.print( + ' ', + step, + 'Keypose loss:', + loss, + mparams.loss_kp * loss_kp, + mparams.loss_proj * loss_proj_adj * loss_proj, + mparams.loss_prob * loss_prob, + ' ', + loss_proj_adj, + uv_pix_raw[0, 0, :3], + uvdw_pos[0, 0, :3], + keys_uvd[0, 0, :3], + summarize=-1) + return loss, uvdw, xyzw + + +# +# Metrics and visualization. +# + + +def add_keypoints(img, uv, colors=None): + """Add keypoint markers to an image, using draw_bounding_boxes. + + Args: + img: [batch, vh, vw, 3] + uv: [batch, num_kp, 2], in normalized coords [-1,1], xy order. + colors: color palette for keypoints. + + Returns: + tf images with drawn keypoints. + """ + if colors is None: + colors = tf.constant([[0.0, 1.0, 0.0, 1.0]]) + else: + colors = tf.constant(colors) + uv = uv[:, :, :2] * 0.5 + 0.5 # [-1,1] -> [0,1] + keys_bb_ul = tf.stack([uv[:, :, 1], uv[:, :, 0]], axis=2) + keys_bb_lr = keys_bb_ul + 3.0 / tf.cast(tf.shape(img)[1], dtype=tf.float32) + keys_bb = tf.concat([keys_bb_ul, keys_bb_lr], axis=2) + print('Bounding box shape:', keys_bb.shape) + return tf.image.draw_bounding_boxes(img, tf.cast(keys_bb, dtype=tf.float32), + colors) + + +def add_keypoints_uv(img, uv, colors=None): + """Add keypoint markers to an image, using draw_bounding_boxes. + + Args: + img: [batch, vh, vw, 3] + uv: [batch, num_kp, 2], in image coords, xy order. + colors: color palette for drawing keypoints. + + Returns: + tf images with drawn keypoints. + """ + resy = img.shape[1] + resx = img.shape[2] + uvx = uv[:, :, 0] / resx + uvy = uv[:, :, 1] / resy + uv = tf.stack([uvx, uvy], axis=2) + return add_keypoints(img, (uv - 0.5) * 2.0, colors) + + +def uv_error(labels, uvdw, _): + diff = labels['keys_uvd_L'][..., :2] - uvdw[..., :2] + return tf.sqrt(tf.reduce_sum(tf.square(diff), axis=-1)) # [batch, num_kp] + + +def disp_error(labels, uvdw, _): + return tf.abs(labels['keys_uvd_L'][..., 2] - uvdw[..., 2]) # [batch, num_kp] + + +def world_error(labels, xyzw): + xyzw = tf.transpose(xyzw, [0, 2, 1]) # [batch, 4, num_kp] + # [batch, 4, num_kp] + gt_world_coords = project(labels['to_world_L'], labels['keys_uvd_L'], True) + sub = xyzw[:, :3, :] - gt_world_coords[:, :3, :] + wd = tf.square(sub) + wd = tf.reduce_sum(wd, axis=[-2]) # [batch, num_kp] result. + wd = tf.sqrt(wd) + return wd # [batch, num_kp] + + +def lt_2cm_error(labels, xyzw): + err = world_error(labels, xyzw) + lt = tf.less(err, 0.02) + return (100.0 * tf.cast(tf.math.count_nonzero(lt, axis=[-1]), tf.float32) / + tf.cast(tf.shape(err)[1], tf.float32)) # [batch] diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/nets.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/nets.py new file mode 100644 index 0000000000000000000000000000000000000000..7c46a5ef1c03261eff3fd6b72770cf98a962337d --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/nets.py @@ -0,0 +1,415 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""DNN definitions for KeyPose keypoint files. + +Adapted from 'Discovery of Latent 3D Keypoints via End-to-end +Geometric Reasoning' keypoint network. +""" + +import math + +import numpy as np +import tensorflow as tf +from tensorflow import keras +from tensorflow.keras import layers + + +def dilated_cnn(inputs, + num_filters, + max_dilation, + dilation_rep, + filter_size, + dropout=0.0, + bn_decay=0.999, + bn_epsilon=1.0e-8, + bn_scale=False, + is_training=True): + """Constructs a base dilated convolutional network. + + Args: + inputs: Typically [batch, h, w, [3,6]] Input RGB images. Two 3-channel + images are concatenated for stereo. + num_filters: The number of filters for all layers. + max_dilation: Size of the last dilation of a series. Must be a power of + two.fine + dilation_rep: Number of times to repeat the last dilation. + filter_size: kernel size for CNNs. + dropout: >0 if dropout is to be applied. + bn_decay: batchnorm parameter. + bn_epsilon: batchnorm parameter. + bn_scale: True to scale batchnorm. + is_training: True if this function is called during training. + + Returns: + Output of this dilated CNN. + """ + # Progression of powers of 2: [1, 2, 4, 8 ... max_dliation]. + maxlog = int(math.log(max_dilation, 2)) + seq = [2**x for x in range(maxlog + 1)] + seq += [1] * (dilation_rep - 1) + net = inputs + for i, r in enumerate([1] + seq + seq + [1]): + # Split off head before the last dilation 1 convolutions. + if i == (len(seq) * 2 - dilation_rep + 2): + head = net + + fs = filter_size + net = layers.Conv2D( + num_filters, + fs, + dilation_rate=r, + padding='same', + kernel_regularizer=tf.keras.regularizers.l2(0.001), + use_bias=False, + trainable=is_training, + name='dil_conv_%d_%d' % (r, i))( + net) + # From https://arxiv.org/pdf/1905.05928.pdf; batchnorm then dropout + # slim layers has decay/momentum = 0.999, not 0.99. + # slim layers has scale=False, not scale=True. + net = layers.BatchNormalization( + scale=bn_scale, + epsilon=bn_epsilon, + trainable=is_training, + momentum=bn_decay)( + net, training=is_training) + net = layers.LeakyReLU(alpha=0.1)(net) + if dropout and i == len(seq): + net = layers.SpatialDropout2D(dropout)(net, training=is_training) + + return net, head + + +# Image normalization. These values are taken from ImageNet. +def norm_image(im): + mean = np.array([0.485, 0.456, 0.406]) + std = np.array([0.229, 0.224, 0.225]) + std_inv = 1.0 / std + return tf.multiply(tf.subtract(im, mean), std_inv) + + +# Integral calculation for centroid coordinates. +def meshgrid(w, h): + """Returns a meshgrid ranging from [-1,1] in x, y axes.""" + + rh = np.arange(0.5, h, 1) / (h / 2) - 1 + rw = np.arange(0.5, w, 1) / (w / 2) - 1 + ranx, rany = tf.meshgrid(rw, rh) + return tf.cast(ranx, tf.float32), tf.cast(rany, tf.float32) + + +# Keras layer for getting centroid coord by multiplying with a mesh field. +def k_reduce_mult_sum(tensor, mult, axis=None, name=None): + + def reduce_mult_sum(tensor, mult, axis): + return tf.reduce_sum(tensor * mult, axis=axis) + + if not axis: + axis = [-1] + return layers.Lambda( + reduce_mult_sum, arguments={ + 'mult': mult, + 'axis': axis + }, name=name)( + tensor) + + +# Keras layer for reducing sum. +def k_reduce_sum(tensor, axis=None, name=None): + + def reduce_sum(tensor, axis): + return tf.reduce_sum(tensor, axis=axis) + + if not axis: + axis = [-1] + return layers.Lambda(reduce_sum, arguments={'axis': axis}, name=name)(tensor) + + +def project(tmat, tvec, tvec_transpose=False): + """Projects homogeneous 3D XYZ coordinates to image uvd coordinates, or vv. + + Args: + tmat: has shape [[N,] batch_size, 4, 4] + tvec: has shape [[N,] batch_size, 4, num_kp] or [batch_size, num_kp, 4]. + tvec_transpose: True if tvec is to be transposed before use. + + Returns: + Has shape [[N,] batch_size, 4, num_kp] + """ + tp = tf.matmul(tmat, tvec, transpose_b=tvec_transpose) + # Using <3:4> instead of <3> preserves shape. + tp = tp / (tp[Ellipsis, 3:4, :] + 1.0e-10) + return tp + + +def project_hom(hom, tvec): + """Transforms homogeneous 2D uvw coordinates to 2D uv1 coordinates. + + Args: + hom: has shape [[N,] batch_size, 3, 3]. + tvec: has shape [[N,] batch_size, num_kp, 3]. + + Returns: + tensor with shape [[N,] batch_size, num_kp, 3]. + """ + tp = tf.matmul(hom, tvec, transpose_b=True) + # Using <2:3> instead of <2> preserves shape. + tp = tp / (tp[Ellipsis, 2:3, :] + 1.0e-10) + return tf.transpose(tp, [0, 2, 1]) + + +def to_pixel(vec, res): + """Converts a normalized image coord to pixel coords.""" + return (vec + 1.0) * res * 0.5 # [-1,1] + + +def to_norm_vec(vec, mparams, weight_disp=1.0): + """Converts a pixel-based tensor to normalized image coordinates.""" + # [..., num_kp, 3] + return tf.concat([ + vec[Ellipsis, 0:1] * 2.0 / mparams.modelx - 1.0, + vec[Ellipsis, 1:2] * 2.0 / mparams.modely - 1.0, + vec[Ellipsis, 2:3] / mparams.modelx * weight_disp + ], + axis=-1) + + +def to_norm(mat, mparams, weight_disp=1.0): + """Converts a pixel-based tensor to normalized image coordinates.""" + # [..., 4, num_kp] + return tf.concat([ + mat[Ellipsis, 0:1, :] * 2.0 / mparams.modelx - 1.0, + mat[Ellipsis, 1:2, :] * 2.0 / mparams.modely - 1.0, + mat[Ellipsis, 2:3, :] * 2.0 / mparams.modelx * weight_disp, mat[Ellipsis, 3:4, :] + ], + axis=-2) + + +def convert_uvd_raw(uvd, offsets, hom, mparams): + """Converts output of uvd integrals on cropped, warped img to original image. + + Args: + uvd: is [batch, num_kp, 3], with order u,v,d. + offsets: is [batch, 3]. + hom: is [batch, 3, 3]. + mparams: model parameters. + + Returns: + Various pixel and disparity results. + """ + num_kp = mparams.num_kp + uv_pix_raw = tf.stack([ + to_pixel(uvd[:, :, 0], mparams.modelx), + to_pixel(uvd[:, :, 1], mparams.modely), + tf.ones_like(uvd[:, :, 0]) + ], + axis=-1) # [batch, num_kp, 3] + uv_pix = project_hom(hom, uv_pix_raw) # [batch, num_kp, 3] + disp = uvd[:, :, 2] * mparams.modelx # Convert to pixels. + + # uvdw is in pixel coords of the original image. + uvdw = tf.stack([ + uv_pix[:, :, 0] + tf.stack([offsets[:, 0]] * num_kp, axis=1), + uv_pix[:, :, 1] + tf.stack([offsets[:, 1]] * num_kp, axis=1), + disp + tf.stack([offsets[:, 2]] * num_kp, axis=1), + tf.ones_like(uv_pix[:, :, 0]) + ], + axis=-1, + name='uvdw_out') + print('uvdw shape is [batch, num_kps, 4]:', uvdw.shape) + + # uvdw_pos is in pixel coords of original image, + # and has always-positive disparities. + uvdw_pos = tf.stack([ + uvdw[:, :, 0], uvdw[:, :, 1], + tf.nn.relu(uvdw[:, :, 2]) + 1.0e-5, + tf.ones_like(uvdw[:, :, 0]) + ], + axis=-1, + name='uvdw_pos') + + return uv_pix_raw, uv_pix, uvdw, uvdw_pos + + +def keypose_model(mparams, is_training): + """Constructs a Keras model that predicts 3D keypoints. + + Model input is left and optionally right image, modelx x modely x 3, float32. + Values are from 0.0 to 1.0 + + Args: + mparams: ConfigParams object use_stereo - True if right image is input. + num_filters - The number of filters for all layers. num_kp - The number of + keypoints. ... + is_training: True if training the model. + + Returns: + uv: [batch, num_kp, 2] 2D locations of keypoints. + d: [batch, num_kp] The inverse depth of keypoints. + prob_viz: A visualization of all predicted keypoints. + prob_vizs: A list of visualizations of each keypoint. + kp_viz: A visualization of GT keypoints. + img_out: The photometrically and geometrically altered image. + rot: rotation matrix modifying input: [batch, 3, 3]. + """ + print('Mparams in keypose_model:\n', mparams) + use_stereo = mparams.use_stereo + num_filters = mparams.num_filters + max_dilation = mparams.max_dilation + dilation_rep = mparams.dilation_rep + dropout = mparams.dropout + num_kp = mparams.num_kp + modelx = mparams.modelx + modely = mparams.modely + filter_size = mparams.filter_size + bn_decay = mparams.batchnorm[0] + bn_epsilon = mparams.batchnorm[1] + bn_scale = mparams.batchnorm[2] + + # Aux params input to the model. + offsets = keras.Input(shape=(3,), name='offsets', dtype='float32') + hom = keras.Input(shape=(3, 3), name='hom', dtype='float32') + to_world = keras.Input(shape=(4, 4), name='to_world_L', dtype='float32') + + # Images input to the model. + img_l = keras.Input(shape=(modely, modelx, 3), name='img_L', dtype='float32') + img_l_norm = layers.Lambda(norm_image)(img_l) + img_r = keras.Input(shape=(modely, modelx, 3), name='img_R', dtype='float32') + if use_stereo: + img_r_norm = layers.Lambda(norm_image)(img_r) + img_l_norm = layers.concatenate([img_l_norm, img_r_norm]) + + net, _ = dilated_cnn( + img_l_norm, + num_filters, + max_dilation, + dilation_rep, + filter_size, + bn_decay=bn_decay, + bn_epsilon=bn_epsilon, + bn_scale=bn_scale, + dropout=dropout, + is_training=is_training) + + print('Dilation net shape:', net.shape) + + # Regression to keypoint values. + if mparams.use_regress: + if dropout: + net = layers.SpatialDropout2D(dropout)(net, training=is_training) + + net = layers.Conv2D( + 64, + 1, + kernel_regularizer=tf.keras.regularizers.l2(0.001), + use_bias=False, + padding='valid')( + net) + net = layers.BatchNormalization( + scale=bn_scale, epsilon=bn_epsilon, momentum=bn_decay)( + net, training=is_training) + net = layers.LeakyReLU(alpha=0.1)(net) + net = layers.Conv2D( + 64, + 1, + kernel_regularizer=tf.keras.regularizers.l2(0.001), + use_bias=False, + padding='valid')( + net) + net = layers.BatchNormalization( + scale=bn_scale, epsilon=bn_epsilon, momentum=bn_decay)( + net, training=is_training) + net = layers.LeakyReLU(alpha=0.1)(net) + net = layers.Conv2D( + num_kp * 3, + 1, + kernel_regularizer=tf.keras.regularizers.l2(0.001), + padding='valid')(net) # [batch, h, w, num_kp * 3] + net = tf.reduce_mean(net, axis=[-3, -2]) # [batch, num_kp * 3] + print('Regress reduce mean shape:', net.shape) + + uvd = tf.reshape(net, [-1, num_kp, 3]) # [batch, num_kp, 3] + print('Regress uvd shape:', uvd.shape) + prob = tf.stack([tf.zeros_like(img_l[Ellipsis, 0])] * num_kp, axis=1) + disp_map = prob + # [batch, num_kp, h, w] + + else: + # The probability distribution map for keypoints. No activation. + prob = layers.Conv2D( + num_kp, + filter_size, + dilation_rate=1, + kernel_regularizer=tf.keras.regularizers.l2(0.001), + padding='same')( + net) + + # Disparity map. + disp_map = layers.Conv2D( + num_kp, + filter_size, + dilation_rate=1, + kernel_regularizer=tf.keras.regularizers.l2(0.001), + padding='same')( + net) + + # [batch_size, h, w, num_kp] + prob = layers.Permute((3, 1, 2))(prob) + disp_map = layers.Permute((3, 1, 2))(disp_map) + + # [batch_size, num_kp, h, w] + prob = layers.Reshape((num_kp, modely * modelx))(prob) + prob = layers.Softmax()(prob) + prob = layers.Reshape((num_kp, modely, modelx), name='prob')(prob) + disp = layers.multiply([prob, disp_map]) + disp = k_reduce_sum(disp, axis=[-1, -2], name='disp_out') + + ranx, rany = meshgrid(modelx, modely) + # Use centroid to find indices. + sx = k_reduce_mult_sum(prob, ranx, axis=[-1, -2]) + sy = k_reduce_mult_sum(prob, rany, axis=[-1, -2]) + # uv are in normalized coords [-1, 1], uv order. + uvd = layers.concatenate([sx, sy, disp]) + uvd = layers.Reshape((3, num_kp))(uvd) + uvd = layers.Permute((2, 1), name='uvd')(uvd) # [batch, num_kp, 3] + + uv_pix_raw, uv_pix, uvdw, uvdw_pos = convert_uvd_raw(uvd, offsets, hom, + mparams) + + xyzw = project(to_world, uvdw_pos, True) # [batch, 4, num_kp] + + model = keras.Model( + inputs={ + 'img_L': img_l, + 'img_R': img_r, + 'offsets': offsets, + 'hom': hom, + 'to_world_L': to_world + }, + outputs={ + 'uvd': uvd, + 'uvdw': uvdw, + 'uvdw_pos': uvdw_pos, + 'uv_pix': uv_pix, + 'uv_pix_raw': uv_pix_raw, + 'xyzw': xyzw, + 'prob': prob, + 'disp': disp_map + }, + name='keypose') + + model.summary() + return model diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/ball_0.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/ball_0.obj new file mode 100644 index 0000000000000000000000000000000000000000..0de7ea30dc1c88e80d6d64d2ef939cb53397f80d --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/ball_0.obj @@ -0,0 +1,1010 @@ +o mesh +v -0.010685 -0.022021 0.006763 +v 0.010279 0.021979 -0.006127 +v 0.030828 -0.008618 -0.007360 +v -0.014343 0.000445 -0.021052 +v -0.018178 0.012434 0.013422 +v 0.012819 -0.000220 0.021572 +v 0.006001 -0.018115 -0.015943 +v 0.013432 -0.019692 0.007045 +v 0.009288 0.004484 -0.022732 +v -0.025192 -0.004911 -0.000790 +v -0.013776 0.019757 -0.008185 +v -0.008867 -0.006546 0.022952 +v 0.003679 0.019812 0.015178 +v 0.022795 0.008595 0.004812 +v -0.014324 -0.017106 -0.012025 +v -0.000380 0.017368 -0.018209 +v 0.021336 0.005303 -0.011350 +v 0.004947 -0.014637 0.019891 +v -0.004568 0.008830 0.023380 +v 0.022099 -0.006575 0.009097 +v -0.003296 0.024900 0.002084 +v 0.002027 -0.024726 -0.002144 +v -0.019646 -0.010837 0.012579 +v -0.023542 0.010441 -0.000716 +v -0.001304 -0.007413 -0.023971 +v 0.017431 -0.008435 -0.015215 +v 0.015322 0.011952 0.015732 +v 0.015880 -0.018008 -0.005900 +v -0.022766 0.002295 -0.011342 +v -0.023638 0.001320 0.010265 +v 0.013459 0.020218 0.006052 +v -0.019487 -0.016256 -0.000226 +v 0.001486 -0.022858 0.010254 +v 0.013059 0.014323 -0.015646 +v -0.012424 0.012482 -0.018302 +v -0.003432 0.005393 -0.024507 +v -0.014436 0.020411 0.004622 +v -0.007036 -0.017315 0.017216 +v -0.008214 0.019006 0.014885 +v -0.015106 0.003243 0.020380 +v 0.001728 -0.001822 0.025140 +v 0.019447 0.014604 -0.004709 +v -0.003817 -0.021962 -0.011483 +v 0.024513 -0.000699 -0.001387 +v 0.015023 -0.010510 0.016912 +v -0.001008 0.023630 -0.008737 +v -0.019081 -0.007563 -0.015017 +v 0.006445 0.009445 0.022494 +v 0.009185 -0.006539 -0.022098 +v -0.010523 -0.011045 -0.020170 +v 0.022012 -0.011072 -0.000976 +v 0.020348 0.003171 0.013918 +v -0.011126 -0.022284 -0.003477 +v -0.019677 0.011868 -0.011208 +v -0.002545 -0.016137 -0.019028 +v 0.017165 0.000334 -0.017933 +v 0.005713 0.024296 0.002995 +v -0.021880 -0.011103 -0.007040 +v 0.022314 -0.003689 -0.009655 +v 0.007801 -0.021939 -0.008354 +v -0.016436 -0.005207 0.018939 +v -0.011959 0.011189 0.019608 +v -0.007072 0.020083 -0.013625 +v 0.006519 0.020059 -0.013520 +v 0.004026 0.011135 -0.022106 +v -0.001112 -0.009650 0.023357 +v 0.008241 -0.019316 0.013562 +v 0.010277 -0.022518 -0.000087 +v 0.008603 -0.007626 0.022374 +v 0.013564 -0.015669 -0.013618 +v -0.018573 0.017377 -0.001896 +v -0.014251 -0.017050 0.012619 +v -0.025413 0.002665 0.002305 +v -0.002445 0.022858 0.010602 +v -0.002324 0.015778 0.019755 +v -0.022951 -0.010600 0.005147 +v -0.020483 0.014288 0.005764 +v 0.002802 0.000142 -0.024918 +v -0.007206 -0.001755 -0.024229 +v -0.007774 0.023667 -0.004474 +v 0.018382 -0.013861 0.009335 +v -0.004974 -0.024549 0.001841 +v 0.023230 0.007677 -0.003930 +v -0.018280 0.006090 -0.016661 +v 0.023778 0.000818 0.006849 +v -0.007184 0.001450 0.024342 +v 0.019244 0.015469 0.003376 +v 0.011063 0.018169 0.013367 +v 0.004479 -0.012525 -0.021139 +v -0.012902 -0.012174 0.018384 +v 0.020176 -0.010893 -0.008654 +v 0.016324 0.007718 -0.017080 +v 0.017977 -0.016946 0.001288 +v 0.018368 -0.003587 0.016390 +v -0.005718 0.012233 -0.021406 +v 0.015330 0.019663 -0.001297 +v 0.029162 -0.001537 -0.007303 +v 0.000658 -0.019188 0.016378 +v 0.014933 0.017560 -0.009426 +v -0.019939 0.004981 0.015453 +v -0.010466 0.006885 -0.022126 +v -0.025244 0.000897 -0.004785 +v 0.018536 0.011753 -0.011564 +v -0.018398 -0.016288 0.007028 +v -0.023566 0.008105 0.006768 +v -0.014301 0.017949 0.011137 +v 0.019072 0.012633 0.009908 +v -0.021404 -0.004227 0.013805 +v 0.004839 -0.024070 0.004303 +v 0.013678 0.006450 0.020008 +v -0.005027 -0.021631 0.012069 +v -0.008900 -0.016795 -0.016550 +v -0.024789 -0.004091 0.006023 +v -0.023293 -0.004302 -0.009747 +v -0.004508 -0.024060 -0.004912 +v -0.008347 0.022838 0.007263 +v -0.023473 0.007915 -0.006986 +v -0.019302 -0.001009 -0.016595 +v 0.006894 0.002901 0.024061 +v 0.002384 0.024808 -0.003033 +v 0.006088 0.022525 0.009424 +v 0.010922 -0.012142 -0.018549 +v -0.016293 -0.018615 -0.005483 +v 0.005044 0.015107 0.019534 +v 0.007172 0.015384 -0.018363 +v -0.014596 -0.005875 -0.019888 +v -0.015018 -0.020482 0.001630 +v -0.015081 0.015762 -0.013327 +v 0.023702 -0.006221 0.002927 +v 0.013910 -0.015796 0.013421 +v 0.010754 0.010300 -0.019969 +v 0.001413 0.006163 0.024501 +v 0.002488 -0.021840 -0.011832 +v -0.006336 -0.012454 0.021196 +v 0.024753 -0.007744 -0.005416 +v -0.013310 0.021565 -0.002291 +v -0.010230 -0.020945 -0.009466 +v -0.023113 -0.010850 -0.000994 +v -0.015317 -0.012446 -0.015878 +v 0.011848 -0.001035 -0.021765 +v -0.012199 -0.001703 0.022370 +v -0.020929 0.013555 -0.005696 +v 0.023619 0.001533 -0.006735 +v -0.009106 0.023566 0.001255 +v -0.010227 0.006400 0.022456 +v 0.013778 -0.005785 0.020098 +v 0.010607 0.022747 0.000178 +v 0.008249 -0.021945 0.008428 +v -0.004020 -0.004028 0.024730 +v 0.000333 0.021016 -0.013833 +v 0.005003 0.022954 -0.008803 +v 0.010332 0.012975 0.018938 +v -0.018573 -0.013257 -0.011193 +v 0.021911 0.011645 -0.000020 +v -0.002627 0.019933 0.015558 +v 0.021013 -0.012376 0.004485 +v 0.003028 0.005793 -0.024355 +v -0.005118 -0.011576 -0.021814 +v 0.010574 -0.013831 0.017997 +v -0.007846 0.016104 -0.017887 +v 0.014816 -0.005293 -0.019089 +v -0.002930 -0.023986 0.007021 +v 0.000555 0.024401 0.006096 +v -0.000795 -0.014541 0.020683 +v 0.024418 0.004004 0.001618 +v -0.018913 -0.000140 0.017418 +v -0.013690 0.014888 0.015714 +v 0.021484 0.007398 0.010047 +v 0.015512 0.016780 0.010103 +v 0.019585 -0.003452 -0.014624 +v 0.007703 -0.002454 0.023838 +v 0.018898 -0.009091 0.013407 +v 0.003844 -0.005838 -0.023954 +v -0.007616 0.015150 0.019029 +v 0.019570 -0.014381 -0.004424 +v -0.016326 0.008629 0.017826 +v 0.022075 -0.001502 0.011299 +v -0.000929 -0.019766 -0.015317 +v 0.016801 0.001181 0.018424 +v -0.007623 -0.007083 -0.022918 +v -0.016798 0.011192 -0.015698 +v 0.001705 0.011694 0.022342 +v 0.003342 -0.006991 0.023955 +v -0.001087 0.009860 -0.023193 +v 0.000909 -0.023843 -0.007152 +v -0.002110 0.002273 0.025160 +v -0.021173 0.007100 -0.012479 +v 0.013779 0.003767 -0.020321 +v 0.012297 -0.019256 -0.009369 +v 0.017562 0.006648 0.016472 +v -0.021588 0.008017 0.011661 +v -0.025055 0.005289 -0.002160 +v -0.002687 0.024880 -0.003071 +v -0.009868 -0.023231 0.001766 +v -0.017524 0.016405 -0.008806 +v 0.014452 -0.019970 -0.001361 +v -0.022869 -0.006963 0.009687 +v -0.006557 0.022632 -0.009216 +v 0.011285 0.018237 -0.012772 +v -0.002353 -0.002150 -0.024995 +v -0.024166 -0.006878 -0.005164 +v -0.014517 0.007610 -0.019482 +v 0.011340 -0.021380 -0.005034 +v -0.010334 -0.019909 0.012118 +v 0.021386 0.009582 -0.008016 +v 0.017283 -0.012694 -0.012132 +v -0.009900 0.002169 -0.023231 +v -0.000320 -0.012303 -0.021825 +v -0.000204 -0.024843 0.002651 +v -0.014904 -0.019609 0.006594 +v -0.016884 -0.010094 0.016471 +v 0.020223 0.001310 -0.014253 +v -0.019822 -0.015045 -0.005190 +v 0.006534 -0.023667 -0.003401 +v 0.002209 -0.016483 -0.018617 +v 0.007179 -0.001444 -0.023819 +v 0.009192 0.022634 0.005857 +v -0.020994 0.014553 0.001073 +v -0.011459 0.019037 -0.012207 +v -0.017966 0.017727 0.003092 +v 0.009656 -0.018661 -0.013161 +v -0.018059 0.015557 0.009484 +v 0.006886 0.023840 -0.003281 +v 0.007711 0.017396 0.016583 +v -0.011214 -0.003194 -0.022532 +v -0.007781 -0.019828 -0.013319 +v -0.021352 -0.008377 -0.011158 +v 0.017493 -0.016587 0.005783 +v -0.010151 0.020660 0.010803 +v -0.020973 -0.014319 0.003644 +v -0.012423 -0.008113 0.020757 +v -0.020764 -0.012427 0.008581 +v 0.003052 -0.011428 0.022303 +v 0.032058 -0.004586 -0.008750 +v -0.024703 0.003804 0.006744 +v 0.010840 0.020511 0.009598 +v 0.009659 -0.022483 0.004276 +v 0.004055 -0.020684 0.013713 +v 0.003545 0.018625 -0.016437 +v 0.001560 0.025022 0.001769 +v -0.000437 0.013664 -0.021112 +v 0.024416 -0.001897 0.002837 +v 0.014658 -0.011761 -0.015881 +v 0.020124 -0.007665 -0.011863 +v -0.021319 -0.003503 -0.013538 +v 0.025970 -0.003172 -0.004848 +v -0.024589 0.006924 0.002260 +v -0.008200 0.010598 0.021650 +v -0.011039 -0.015864 0.016568 +v -0.024509 -0.007100 0.002955 +v 0.007630 0.008421 -0.022315 +v 0.001514 0.017591 0.018131 +v 0.024055 -0.005096 -0.001189 +v 0.007034 -0.017097 0.017016 +v 0.002184 0.022512 0.011170 +v -0.004303 0.018367 -0.016837 +v 0.017676 -0.015042 -0.008391 +v 0.018560 0.016550 -0.001027 +v 0.019040 0.008092 -0.013674 +v 0.009997 -0.015845 -0.016330 +v -0.002197 -0.024903 -0.001445 +v -0.025461 -0.001571 0.002666 +v 0.016616 0.017694 -0.005418 +v 0.009080 0.020918 -0.010256 +v 0.011500 -0.019186 0.010887 +v 0.013410 -0.020669 0.002665 +v 0.011314 -0.010147 0.019908 +v -0.020512 0.002921 -0.015022 +v 0.018897 0.009776 0.012987 +v 0.003160 0.015265 -0.019645 +v -0.003814 0.024166 0.006188 +v -0.018057 -0.014432 0.011130 +v -0.017168 0.002340 -0.018611 +v -0.015716 -0.013752 0.014814 +v 0.010517 0.004183 0.022416 +v -0.024254 0.003818 -0.007597 +v -0.021694 -0.000076 0.013997 +v -0.006923 -0.014508 -0.019475 +v 0.016604 -0.012627 0.013558 +v 0.022298 0.000371 -0.010560 +v -0.020519 0.011818 0.010044 +v 0.010656 0.009146 0.020896 +v 0.020531 -0.005312 0.012955 +v -0.008202 -0.022801 -0.006357 +v 0.016124 0.011341 -0.015094 +v -0.022734 0.011469 0.003205 +v 0.020611 0.012452 0.006085 +v 0.016115 0.018897 0.002658 +v 0.022831 0.005617 -0.007547 +v -0.017196 -0.016429 -0.008821 +v -0.015764 -0.000788 0.020173 +v 0.007479 0.020102 0.013078 +v 0.023453 0.007958 0.000749 +v -0.011446 0.016186 -0.016001 +v 0.020546 -0.010426 0.009154 +v -0.005891 0.002075 -0.024507 +v -0.004631 0.012530 0.021618 +v 0.018016 0.014639 -0.008769 +v 0.022539 0.003160 0.009913 +v -0.000829 -0.021414 0.013339 +v -0.003384 0.021715 -0.012388 +v 0.015646 -0.016928 0.009365 +v 0.001347 -0.024171 0.006340 +v -0.008300 -0.002661 0.023905 +v -0.006756 0.008115 -0.023142 +v 0.007539 -0.011726 0.020930 +v -0.009478 0.010877 -0.020884 +v 0.024318 0.003057 -0.003071 +v -0.015567 0.020096 0.000706 +v -0.011705 -0.014041 -0.017413 +v 0.005945 -0.009043 -0.022500 +v -0.015997 0.019425 -0.004351 +v 0.016814 0.017361 0.006364 +v 0.018461 0.004472 -0.015942 +v 0.013386 -0.009001 -0.018641 +v -0.007114 -0.022804 0.008354 +v -0.007006 -0.024078 -0.001808 +v 0.006351 -0.015069 -0.018715 +v -0.005988 0.021300 0.012518 +v 0.012119 0.015064 0.016065 +v -0.023312 -0.002677 0.010680 +v 0.015748 0.014844 -0.012204 +v -0.016443 -0.002387 -0.019233 +v 0.002688 0.002452 0.025001 +v -0.004704 -0.018281 -0.016511 +v -0.014514 -0.020525 -0.002479 +v -0.014404 -0.009559 -0.018494 +v -0.000265 0.003122 -0.025003 +v 0.023653 0.004856 0.005637 +v -0.004916 -0.008741 0.023307 +v 0.021841 -0.010409 -0.004827 +v -0.025052 -0.003172 -0.004321 +v -0.003957 -0.019809 0.015349 +v 0.006251 -0.020826 -0.011985 +v -0.003625 0.015376 -0.019664 +v -0.010712 0.002380 0.022993 +v -0.010246 0.021529 -0.008678 +v 0.006257 0.002302 -0.024207 +v -0.024066 -0.000629 -0.008786 +v -0.000272 -0.005754 0.024590 +v 0.011087 -0.003936 0.022178 +v 0.022307 -0.008973 0.005792 +v 0.006620 -0.023950 0.000892 +v -0.016815 0.018004 0.006786 +v 0.008671 0.017551 -0.015507 +v -0.005352 0.005181 0.024289 +v -0.025106 -0.000199 0.006234 +v -0.017887 -0.017999 0.002797 +v 0.013496 0.020441 -0.004717 +v -0.004104 -0.015905 0.019320 +v -0.019317 -0.007379 0.015306 +v 0.022004 -0.007363 -0.008051 +v 0.027394 -0.007173 -0.008184 +v 0.019991 -0.000502 0.014846 +v -0.012853 0.004013 -0.021472 +v 0.017614 -0.017157 -0.002639 +v 0.013422 0.007616 -0.019508 +v -0.010862 0.022549 0.004445 +v 0.023444 -0.003725 0.007014 +v 0.020516 -0.013960 0.001093 +v -0.014208 -0.019129 -0.008577 +v -0.011090 -0.018060 -0.013702 +v -0.025680 -0.000322 -0.000878 +v -0.011193 -0.006875 -0.021754 +v 0.015673 -0.002651 0.019319 +v -0.009366 -0.010271 0.021330 +v -0.019351 0.008851 0.014528 +v 0.007412 0.012333 -0.020471 +v -0.005689 0.024595 -0.000961 +v -0.014053 0.006763 0.020288 +v 0.010836 -0.016436 0.015430 +v -0.004945 -0.004627 -0.024218 +v 0.000861 -0.003886 -0.024678 +v 0.003229 0.021911 -0.011824 +v 0.001788 -0.009230 -0.023416 +v -0.023019 0.010611 -0.004302 +v 0.010512 0.013448 -0.018184 +v -0.018433 -0.004578 -0.016957 +v -0.022114 0.004378 0.012626 +v 0.004135 0.023990 0.006264 +v 0.004885 -0.023329 -0.006754 +v -0.011547 0.017908 0.014069 +v 0.016088 0.014093 0.012949 +v -0.012171 0.020898 0.007843 +v -0.006507 0.024142 0.003835 +v -0.014682 0.011784 0.017370 +v 0.021767 0.010887 -0.004468 +v -0.005025 0.017937 0.017288 +v 0.002566 -0.019207 -0.015736 +v -0.002873 -0.023413 -0.008368 +v 0.002876 -0.017147 0.018270 +v -0.012655 0.022017 0.001424 +v -0.015939 0.015264 0.013001 +v 0.017374 -0.006987 0.016388 +v 0.004937 -0.022129 0.010558 +v 0.012644 0.021519 0.002864 +v -0.015727 -0.017701 0.009476 +v 0.012113 0.020074 -0.008658 +v 0.008105 -0.011175 -0.020725 +v -0.003640 0.024144 -0.006469 +v 0.013489 0.009718 0.018740 +v -0.010188 0.016178 0.016873 +v 0.013465 0.010909 -0.017839 +v -0.019084 -0.004213 0.016780 +v 0.015169 -0.016705 -0.010175 +v -0.008281 -0.014564 0.019203 +v -0.001349 0.010172 0.023195 +v 0.015026 -0.001857 -0.019642 +v 0.017409 -0.005135 -0.016746 +v -0.013633 -0.004602 0.021113 +v -0.018256 -0.010768 -0.014015 +v 0.002381 0.024079 -0.006851 +v -0.010222 0.023089 -0.002017 +v -0.021893 0.013150 -0.002072 +v -0.012810 -0.021575 0.004042 +v -0.021747 0.010058 -0.009128 +v 0.004897 0.005705 0.024092 +v -0.018520 0.016792 -0.005285 +v 0.007080 0.012374 0.020812 +v 0.029927 -0.004711 -0.006071 +v -0.007485 -0.023578 0.005041 +v -0.017205 -0.018529 -0.001847 +v -0.021616 -0.000109 -0.013508 +v -0.007220 -0.019671 0.014379 +v 0.023723 -0.001839 -0.007153 +v 0.012029 -0.005016 -0.021054 +v -0.012732 -0.019855 0.009724 +v -0.004470 -0.000465 0.024983 +v 0.001428 0.014603 0.020640 +v -0.007030 -0.021923 -0.009914 +v -0.017760 0.004610 0.017996 +v -0.012310 -0.022062 -0.000331 +v -0.011797 0.021723 -0.005695 +v -0.018891 0.008722 -0.014682 +v 0.004648 -0.003656 0.024488 +v -0.007968 0.004866 -0.023603 +v -0.004585 -0.008420 -0.023224 +v -0.000429 0.006788 -0.024302 +v -0.023488 0.005406 0.009379 +v 0.013332 0.003234 0.020954 +v 0.018617 0.014778 0.007369 +v 0.023202 -0.008300 0.000410 +v -0.013396 -0.020645 -0.005767 +v 0.004974 0.024560 -0.000200 +v -0.021527 -0.013320 -0.002971 +v -0.001111 -0.017059 0.018610 +v 0.015543 -0.018815 0.004323 +v -0.014020 0.014142 -0.015968 +v 0.002999 -0.024689 0.000982 +v -0.000120 0.021090 0.013821 +v 0.010785 0.007142 -0.021341 +v -0.001819 0.006387 0.024479 +v -0.016903 -0.007382 -0.017485 +v -0.017709 0.014392 -0.011681 +v -0.023750 -0.007550 0.006631 +v 0.019693 0.006338 0.013920 +v 0.013525 -0.013283 0.016229 +v -0.014139 -0.015165 -0.014614 +v 0.009078 0.001059 -0.023171 +v 0.024478 -0.004945 -0.007420 +v 0.011383 0.022033 -0.002908 +v -0.022969 0.005699 -0.009851 +v 0.004552 -0.000349 0.024803 +v 0.024320 0.001609 0.003729 +v -0.000594 0.024556 -0.005613 +v 0.004730 -0.023324 0.007608 +v 0.016231 0.004140 -0.018317 +v -0.001220 -0.024498 -0.004451 +v 0.007994 0.006699 0.022922 +v -0.000184 -0.022923 -0.009994 +v -0.021279 -0.007649 0.012353 +v -0.024323 -0.007973 -0.001591 +v -0.023037 -0.010368 -0.004174 +v -0.023197 -0.007177 -0.008172 +v -0.003349 -0.011915 0.022118 +v 0.021700 0.011651 0.003219 +v 0.009734 -0.003461 -0.022562 +v -0.009219 0.013668 -0.019345 +v 0.013874 0.016327 0.013114 +v -0.022667 -0.011616 0.002180 +v -0.021972 0.011659 0.006650 +v -0.009255 0.018183 -0.014948 +v 0.019992 0.012455 -0.007672 +v 0.016310 0.004493 0.018385 +v 0.021578 0.009820 0.007489 +v -0.000322 0.025103 -0.001025 +v -0.002715 0.000956 -0.025082 +v -0.014903 0.017621 -0.010825 +v 0.009102 0.000296 0.023431 +v 0.020573 0.013843 -0.001752 +v 0.003468 0.009141 0.023310 +v 0.023198 -0.007674 -0.002748 +v 0.010898 -0.008757 -0.020451 +v -0.002050 -0.022655 0.010793 +v -0.001653 0.013307 0.021485 +v -0.019596 0.013931 -0.008929 +v -0.012363 0.009765 -0.019897 +v 0.006135 -0.009450 0.022538 +v 0.002381 0.008927 -0.023469 +v -0.001580 0.019490 -0.015979 +v -0.008085 -0.009932 -0.021882 +v -0.014803 -0.008775 0.018954 +v -0.013867 -0.002910 -0.021046 +v 0.018563 0.003005 0.016383 +v 0.020534 0.008743 -0.010818 +v 0.021141 -0.001587 -0.012790 +v 0.013969 -0.019859 -0.004422 +v -0.009613 -0.021488 0.009555 +v 0.023967 0.005905 -0.001583 +v -0.005096 0.023035 0.009144 +v -0.001795 -0.001862 0.025215 +v -0.022295 -0.009680 0.008501 +v -0.015398 0.004463 -0.019819 +v 0.012317 -0.013739 -0.016410 +v -0.004621 -0.020331 -0.013884 +v -0.012080 -0.019168 -0.011041 +v -0.019502 -0.013952 -0.008429 +v 0.008959 0.023336 0.002611 +v -0.024193 0.007939 -0.003250 +v 0.019353 -0.015032 0.004031 +v 0.005293 0.023803 -0.005951 +v -0.010550 0.013709 0.018833 +v -0.003704 0.008469 -0.023576 +v -0.013246 0.001360 0.021767 +v -0.002179 -0.010250 -0.022933 +v -0.020504 -0.011336 -0.009982 +v -0.007304 0.007683 0.023115 +v -0.004106 -0.013998 -0.020418 +v 0.007842 -0.014111 0.019184 +v 0.004230 -0.018881 0.016063 +v 0.024252 -0.000365 -0.004545 +v -0.011614 -0.000138 -0.022524 +v 0.015559 -0.019136 0.001327 +v -0.012588 0.004618 0.021702 +v -0.021523 -0.013547 -0.000023 +v 0.020948 -0.004792 -0.012034 +v -0.016374 -0.015000 -0.012328 +v -0.016567 0.008403 -0.017315 +v 0.000012 -0.012121 0.022200 +v -0.000203 -0.021357 -0.012949 +v 0.004634 0.017931 0.017220 +v -0.009440 -0.018024 0.015360 +v 0.009492 -0.022618 -0.003126 +v -0.000238 -0.017748 -0.017620 +v 0.006476 -0.005773 0.023658 +v 0.018465 -0.010091 -0.012697 +v 0.013272 0.016215 -0.013443 +v 0.001431 -0.014314 -0.020389 +v 0.007118 -0.004908 -0.023317 +v -0.003663 0.023001 -0.009716 +v -0.008903 0.020910 -0.011169 +v 0.004853 0.021645 0.011884 +v 0.014088 0.000772 -0.020364 +v 0.000061 0.019322 0.016366 +v 0.005838 0.005721 -0.023788 +v 0.013232 0.018387 0.010756 +v -0.020165 0.001976 0.015948 +v 0.023826 -0.005141 -0.004044 +v 0.011007 -0.021209 0.006973 +v 0.016311 0.009218 0.016593 +v -0.016306 0.018434 -0.007016 +v -0.022208 0.009727 0.008739 +v -0.024396 -0.002967 -0.007183 +v 0.000131 0.023376 0.009389 +v 0.018706 -0.011412 0.011761 +v 0.009496 -0.020495 -0.010134 +v 0.019694 -0.014872 -0.001476 +v 0.004011 -0.002402 -0.024509 +v -0.011825 -0.017946 0.013804 +v -0.002855 -0.024660 0.003730 +v -0.002572 0.012055 -0.022068 +v 0.015647 -0.007496 -0.017508 +v -0.003081 0.021535 0.013027 +v -0.006335 -0.005723 0.023918 +v 0.026969 -0.003302 -0.007589 +v -0.022700 -0.001802 -0.011523 +v -0.014304 0.019216 0.008602 +v -0.025544 0.002591 -0.001501 +v 0.011243 0.002467 -0.022050 +v 0.022339 -0.010324 0.002166 +v 0.002001 -0.014644 0.020454 +v 0.005336 -0.022249 -0.009655 +v 0.008039 0.023731 -0.000367 +v -0.017437 0.010467 0.015779 +v 0.001856 0.023224 -0.009465 +v 0.019537 -0.013229 -0.007261 +v 0.008285 0.015218 0.018230 +v -0.024545 0.005414 -0.005327 +v 0.006379 0.021529 -0.011154 +v -0.013460 -0.014368 0.016331 +v 0.007697 -0.021076 0.011016 +v -0.004544 -0.022971 0.009404 +v -0.015881 0.013272 0.015155 +v 0.021968 -0.004198 0.010644 +v 0.017693 -0.002300 -0.017235 +v -0.016587 -0.009903 -0.016371 +v 0.016504 -0.014537 0.011552 +v -0.024532 0.005767 0.004772 +v 0.022723 0.005583 0.008369 +v 0.000539 0.000670 0.025279 +v -0.002605 -0.007168 0.024157 +v 0.026952 -0.005517 -0.005940 +v 0.020145 0.004294 -0.013763 +v 0.007617 0.022442 -0.008092 +v -0.018915 -0.016643 -0.002895 +v -0.011069 -0.021558 -0.006917 +v -0.010437 -0.004291 0.022851 +v -0.020201 0.015210 -0.003628 +v 0.014571 0.018949 -0.007085 +v 0.012449 -0.017660 -0.012096 +v 0.008802 -0.022391 -0.005771 +v 0.008829 -0.013905 -0.018647 +v -0.017907 0.012209 -0.013418 +v -0.001731 0.024739 0.004519 +v -0.020884 -0.006184 -0.013271 +v -0.000165 -0.000014 -0.025128 +v -0.014391 0.010606 -0.018064 +v 0.012900 0.021418 -0.000725 +v 0.003116 0.020355 -0.014375 +v 0.004403 0.011630 0.021961 +v -0.011340 0.008548 0.021201 +v 0.004123 -0.020332 -0.013805 +v 0.024589 0.001405 0.000335 +v 0.004883 0.016794 -0.017973 +v 0.021446 0.002436 -0.012104 +v 0.017031 -0.010024 0.015151 +v -0.017778 -0.011635 0.014376 +v -0.017108 -0.007620 0.017557 +v 0.022665 0.003480 -0.009205 +v 0.017927 -0.016031 -0.005802 +v -0.009693 -0.000372 0.023538 +v -0.012700 -0.011752 -0.018450 +v -0.009024 -0.004669 -0.023105 +v -0.019796 0.015753 0.003289 +v 0.010822 0.015953 -0.015804 +v -0.025066 -0.004328 0.003353 +v 0.003200 0.023420 0.008724 +v 0.019852 0.014958 0.000806 +v 0.023654 0.005007 -0.005062 +v 0.000335 -0.024968 -0.000070 +v 0.020291 -0.012407 0.007071 +v 0.013465 -0.002738 0.020906 +v -0.023840 -0.009232 0.001482 +v 0.023202 -0.006461 0.005583 +v 0.001472 0.011921 -0.022112 +v -0.010243 -0.012297 0.019828 +v 0.018915 -0.006034 -0.014589 +v 0.002758 -0.022918 -0.009409 +v 0.015481 -0.013413 -0.013952 +v 0.020478 0.009854 0.010117 +v -0.007882 -0.012302 -0.020707 +v 0.018911 -0.000258 -0.016026 +v -0.016513 0.019338 -0.001752 +v 0.006653 0.023642 0.005385 +v 0.020797 -0.007728 0.011096 +v -0.025196 0.004865 0.000707 +v 0.023295 -0.001209 0.008482 +v -0.005861 -0.023151 -0.007537 +v 0.013216 -0.008349 0.019541 +v -0.020342 -0.002162 0.015688 +v 0.012632 0.012191 0.017903 +v -0.009785 -0.023149 -0.001373 +v -0.024264 -0.001064 0.008819 +v -0.004785 0.002435 0.024820 +v 0.021169 0.005235 0.012034 +v -0.006152 0.014627 -0.019701 +v -0.021687 0.004230 -0.012768 +v -0.024506 0.007590 -0.000286 +v -0.006880 0.018358 -0.016068 +v 0.028402 -0.008639 -0.006245 +v 0.012732 -0.019982 -0.006879 +v -0.012395 -0.009099 -0.020121 +v -0.004891 0.015892 0.019219 +v -0.017225 -0.018005 0.005331 +v -0.008131 0.022974 -0.006974 +v -0.000657 0.022585 -0.011112 +v -0.006142 -0.016596 -0.017905 +v -0.018529 0.006950 0.016434 +v -0.002492 0.017795 0.017908 +v 0.020811 -0.002650 0.013272 +v -0.013894 0.009455 0.019376 +v 0.003724 0.002582 -0.024759 +v 0.010390 -0.021020 -0.007742 +v -0.022457 -0.005234 0.011591 +v 0.016937 0.018059 -0.002571 +v -0.018658 0.016498 0.005731 +v -0.012942 0.017189 -0.013719 +v 0.012713 -0.011518 0.018197 +v -0.018898 0.017104 0.000664 +v -0.007475 0.022235 0.009796 +v 0.020982 -0.012582 -0.003202 +v 0.002255 -0.024583 0.003947 +v -0.007098 -0.018434 -0.015532 +v 0.014719 0.018656 0.007689 +v -0.001602 -0.004931 -0.024626 +v -0.023840 0.008485 0.004178 +v 0.008932 0.019572 -0.012736 +v -0.007877 0.005217 0.023616 +v 0.008454 0.020993 0.010865 +v -0.005168 0.019690 0.015241 +v 0.004916 0.008764 -0.023073 +v -0.006261 0.021594 -0.011547 +v 0.011575 -0.006518 0.021196 +v -0.005435 0.024388 -0.003696 +v -0.009328 -0.013711 -0.019057 +v 0.030236 -0.006459 -0.008615 +v -0.007268 -0.009352 0.022490 +v -0.001887 -0.019018 0.016637 +v -0.017626 -0.002043 0.018550 +v 0.016449 -0.005186 0.017952 +v 0.001933 -0.021686 0.012483 +v 0.023795 0.006269 0.003510 +v 0.004793 0.013175 -0.020770 +v -0.007488 -0.023992 0.002305 +v -0.004302 -0.017764 0.017584 +v -0.001570 -0.014258 -0.020514 +v 0.016709 -0.011194 -0.014194 +v -0.025178 0.001885 0.004773 +v 0.005106 -0.024252 -0.001126 +v -0.011932 -0.016150 -0.015396 +v 0.021213 0.000740 0.012999 +v 0.010041 0.016525 0.016076 +v 0.012425 -0.021293 -0.002121 +v -0.003577 0.020293 -0.014638 +v 0.026274 -0.001145 -0.006452 +v 0.001030 0.018935 -0.016516 +v -0.015762 -0.019594 0.003883 +v 0.000820 0.008953 0.023668 +v 0.002508 -0.011355 -0.022246 +v 0.001460 -0.006653 -0.024170 +v 0.022685 0.009726 -0.002420 +v 0.008759 -0.004904 0.023012 +v -0.019810 0.014001 0.008538 +v 0.015699 -0.014929 -0.011945 +v 0.001486 -0.008678 0.023667 +v 0.022539 0.007915 -0.006339 +v -0.020002 0.006289 -0.014552 +v -0.016856 0.001890 0.019183 +v 0.013623 -0.018624 0.009314 +v -0.020081 -0.014588 0.006262 +v 0.017227 0.011047 0.014372 +v -0.018088 -0.016871 -0.005599 +v 0.011201 0.021403 0.006707 +v 0.006964 -0.023297 0.005380 +v 0.017849 0.012480 0.012194 +v 0.007864 0.023090 -0.005689 +v -0.004689 -0.024622 -0.001051 +v 0.021764 0.006981 -0.009547 +v -0.000210 -0.023711 0.008224 +v -0.021640 -0.012650 0.005654 +v -0.018918 0.001792 -0.016934 +v -0.013709 0.016910 0.013364 +v -0.012686 0.006442 -0.020983 +v -0.009395 -0.000564 -0.023554 +v 0.002163 0.024705 0.004229 +v 0.003878 -0.014524 -0.019795 +v 0.032042 -0.006085 -0.006774 +v 0.028524 -0.002838 -0.005250 +v 0.013395 -0.017477 0.011675 +v -0.017387 -0.000128 -0.018631 +v -0.008114 -0.023359 -0.003946 +v 0.003402 -0.024293 -0.004156 +v 0.002387 -0.004633 0.024710 +v -0.016093 0.013385 -0.014615 +v 0.017817 -0.001390 0.017371 +v -0.019904 0.009729 -0.012671 +v -0.021406 0.013542 0.003307 +v -0.010969 0.014433 -0.017791 +v -0.003359 -0.014093 0.020805 +v -0.019934 -0.008879 -0.013128 +v 0.018327 0.016766 0.001506 +v 0.000255 0.004058 0.024993 +v -0.022007 0.011338 -0.007055 +v 0.015803 -0.018663 -0.003324 +v 0.015329 0.007270 0.018398 +v -0.004837 -0.002095 -0.024735 +v 0.006388 0.018396 -0.015727 +v 0.002057 0.017194 -0.018154 +v 0.008257 0.022204 0.008350 +v 0.002372 0.021334 0.013300 +v 0.011498 0.006201 0.021460 +v 0.015591 -0.007509 0.017967 +v 0.017645 0.014607 0.009842 +v 0.017030 0.016472 -0.007485 +v -0.002422 0.023806 0.008155 +v -0.016531 -0.005221 -0.018546 +v 0.018658 -0.012966 -0.009515 +v -0.025461 -0.002588 -0.001737 +v 0.031373 -0.002861 -0.007187 +v -0.007286 0.010209 -0.022041 +v -0.005132 -0.024044 0.005375 +v 0.014306 0.020490 0.001012 +v 0.013250 0.017733 -0.011459 +v 0.016428 -0.018426 -0.000963 +v -0.002597 0.025023 -0.000230 +v -0.019247 -0.014601 0.008527 +v 0.012267 -0.021055 0.004751 +v -0.019913 0.010843 0.012162 +v -0.016108 0.017629 0.009054 +v -0.022285 -0.006091 -0.010997 +v -0.019971 -0.003333 -0.015518 +v 0.008226 -0.023338 -0.001028 +v 0.002101 0.024966 -0.000569 +v 0.004519 -0.016672 -0.017998 +v 0.007418 -0.019333 -0.013701 +v 0.006565 -0.013123 -0.020098 +v 0.000810 0.015718 -0.019574 +v 0.018144 0.006836 -0.015503 +v -0.023646 0.009901 0.001645 +v 0.009102 -0.015624 0.017413 +v -0.012311 0.019742 0.010352 +v -0.005909 0.024458 0.001544 +v 0.024395 -0.003412 0.000470 +v -0.012825 -0.021036 0.006405 +v 0.024136 -0.001508 0.005169 +v -0.023216 -0.008746 -0.006384 +v -0.006843 0.012908 0.020829 +v -0.014237 0.020367 -0.005640 +v 0.015706 -0.009602 -0.016359 +v -0.008226 0.020515 0.012660 +v 0.011337 -0.018021 0.012951 +v -0.025224 0.003184 -0.003777 +v -0.017305 -0.018546 0.000563 +v 0.010157 -0.001877 0.022902 +v -0.023868 0.001705 -0.009160 +v 0.013108 -0.002791 -0.020788 +v -0.025445 -0.003231 0.000973 +v -0.022255 0.012632 0.000495 +v -0.009928 -0.019983 -0.011610 +v -0.017716 0.014551 0.011607 +v 0.014793 0.001581 0.020101 +v 0.010831 -0.017039 -0.014417 +v -0.016189 0.019279 0.003513 +v -0.002696 -0.024869 0.001302 +v 0.016918 0.012657 -0.013028 +v 0.024042 -0.004160 0.004028 +v 0.024915 -0.007433 -0.007750 +v -0.016576 0.005851 -0.018320 +v -0.003759 0.003056 -0.024837 +v -0.016893 -0.013167 -0.013712 +v -0.013034 -0.016214 0.014838 +v -0.023522 -0.004724 0.009421 +v -0.007270 -0.021006 0.012307 +v 0.022885 0.000790 0.009626 +v -0.010166 -0.022818 0.004047 +v -0.016502 -0.014828 0.012829 +v 0.018906 -0.006826 0.014632 +v 0.017667 0.002654 -0.017233 +v 0.012091 0.005150 -0.021137 +v -0.020010 -0.015593 0.001945 +v -0.008705 0.023332 0.004843 +v 0.024270 -0.003072 -0.003076 +v 0.008218 -0.017488 -0.015623 +v -0.022255 -0.009288 -0.008445 +v 0.018256 0.016372 -0.003783 +v 0.018057 0.010450 -0.013428 +v 0.005316 -0.012202 0.021407 +v 0.014521 -0.018080 -0.008420 +v -0.000982 0.025029 0.001951 +v -0.024730 -0.006174 -0.002999 +v 0.022768 0.009636 0.002198 +v 0.014890 0.013799 -0.014326 +v 0.009284 0.015260 -0.017419 +v -0.005259 0.016478 -0.018449 +v 0.006967 -0.000178 0.024188 +v -0.020035 0.015790 -0.001063 +v 0.009144 0.011383 0.020487 +v 0.022418 -0.008435 -0.005875 +v 0.009636 -0.011790 0.019973 +v 0.008200 -0.009069 -0.021659 +v -0.012528 -0.018868 0.011796 +v 0.020469 0.013605 0.003952 +v 0.019907 0.011051 -0.009851 +v -0.019449 0.015170 -0.006631 +v -0.022985 -0.000725 0.011849 +v 0.013213 -0.020891 0.000342 +v 0.023307 0.003183 0.007749 +v -0.003532 0.010770 0.022720 +v 0.010583 0.022430 0.003956 +v 0.015353 0.009971 -0.016766 +v 0.020744 -0.008901 -0.009642 +v 0.014026 0.013998 0.015369 +v 0.008485 -0.023246 0.002023 +v 0.001454 -0.020593 0.014437 +v 0.008858 -0.009891 0.021281 +v -0.007648 0.024028 -0.001995 +v 0.023000 -0.008423 0.003251 +v -0.005608 0.004717 -0.024321 +v 0.022684 0.007520 0.006826 +v 0.010390 -0.020740 0.009119 +v 0.019031 -0.014308 0.007060 +v -0.022624 0.001918 0.012214 +v -0.014095 -0.002119 0.021182 +v -0.002754 -0.012562 -0.021551 +v 0.005039 -0.000052 -0.024564 +v 0.006382 0.018838 0.015435 +v 0.006062 -0.020736 0.012649 +v -0.016093 0.005668 0.019120 +v -0.012942 0.013192 0.017751 +v 0.001045 -0.024429 -0.004581 +v -0.006163 0.023492 0.007194 +v -0.015111 -0.011222 0.017322 +v -0.024999 -0.005524 0.001381 +v -0.000844 -0.024357 0.005804 +v 0.009348 0.023018 -0.002805 +v 0.003605 -0.009298 0.023171 +v -0.000505 0.016914 0.018894 +v 0.017788 0.017016 0.004152 +v 0.016299 0.015725 -0.010196 +v -0.011443 -0.014134 0.017955 +v 0.009764 -0.001221 -0.022799 +v 0.011885 0.001873 0.022013 +v 0.002959 0.016217 0.019174 +v 0.011210 -0.022002 0.001894 +v -0.002575 -0.018082 -0.017204 +v -0.012828 0.021661 0.003674 +v 0.009724 0.019634 0.012315 +v 0.015738 0.018718 0.004936 +v 0.006292 -0.018965 0.015181 +v 0.015261 -0.018398 0.006942 +v 0.018451 0.000800 0.016747 +v 0.004470 0.024380 -0.003953 +v -0.012623 -0.004703 -0.021528 +v -0.009525 0.011904 0.020414 +v -0.006637 -0.000726 0.024517 +v -0.007676 0.000732 -0.024135 +v 0.016607 0.018606 0.000193 +v -0.012062 -0.006103 0.021647 +v -0.025579 0.000586 0.001524 +v -0.003133 0.017114 -0.018269 +v 0.013110 -0.011482 -0.017439 +v -0.010051 0.004328 -0.022768 +v -0.012548 0.001803 -0.022018 +v 0.008841 0.018798 0.014230 +v 0.029443 -0.003597 -0.008048 +v -0.011913 -0.022294 0.002157 +v 0.001653 -0.020481 -0.014183 +v -0.008255 -0.023822 0.000246 +v -0.009786 0.021832 0.008594 +v 0.003864 -0.008507 -0.023277 +v 0.014418 0.012240 -0.016144 +v 0.019254 -0.010930 -0.010645 +v -0.005724 0.023620 -0.006908 +v -0.020553 0.007106 0.013962 +v -0.009034 0.008885 -0.022055 +v 0.016027 -0.003545 -0.018561 +v 0.006063 -0.011020 -0.021572 +v -0.020206 0.000667 -0.015520 +v -0.017220 -0.016143 0.009828 +v -0.010941 0.022916 0.000261 +v -0.010303 0.022732 -0.004460 +v -0.018062 0.004075 -0.017477 +v 0.000191 -0.015936 -0.019251 +v -0.018717 -0.009683 0.014660 +v -0.022239 0.007732 -0.010176 +v 0.001778 0.013739 -0.020941 +v 0.024592 -0.001028 0.000770 +v 0.006040 0.016512 0.018100 +v 0.016247 -0.016898 -0.007801 +v -0.002984 -0.021132 0.013524 +v 0.021093 0.013091 0.001700 +v -0.014419 0.020803 0.002417 +v -0.014912 -0.006723 0.019675 +v -0.019268 -0.016052 0.004871 +v -0.011774 0.020009 -0.010285 +v -0.021010 -0.013263 -0.005574 +v 0.010345 0.014692 0.017602 +v -0.024926 -0.000876 -0.006002 +v 0.015097 0.019409 -0.003679 +v -0.011557 0.019152 0.012295 +v 0.012331 0.020803 -0.006505 +v 0.015601 -0.011879 0.015324 +v -0.012133 -0.020421 -0.008579 +v -0.021685 0.002152 -0.013370 +v 0.018491 0.008338 0.014551 +v 0.009153 0.009476 -0.021201 +v -0.003911 0.010473 -0.022676 +v -0.003413 -0.006145 -0.024102 +v -0.004479 0.022226 0.011282 +v -0.016084 -0.016475 -0.010671 +v 0.010577 0.019671 -0.011186 +v -0.019674 -0.005458 -0.015294 +v -0.005207 0.006832 -0.023921 +v -0.024429 0.001463 0.008265 +v -0.010217 -0.008788 -0.021577 +v -0.002668 0.013867 -0.020867 +v -0.020970 -0.009731 0.011292 +v -0.019309 -0.011414 -0.012022 +v 0.029803 -0.006825 -0.006446 +v 0.024471 0.003623 -0.001002 +v 0.021252 -0.010152 -0.006879 +v 0.020439 0.012832 -0.005400 +v -0.003446 0.014243 0.020771 +v -0.007085 0.017354 0.017236 +v -0.007653 0.012796 -0.020514 +v -0.019235 -0.012660 0.011357 +v -0.012185 0.021559 0.005803 +v 0.023131 -0.000140 -0.008309 +v 0.019156 0.004741 0.015285 +v 0.017568 0.009061 -0.014978 +o kp.000 +v -0.001000 -0.001000 0.001000 +v -0.001000 0.001000 0.001000 +v -0.001000 -0.001000 -0.001000 +v -0.001000 0.001000 -0.001000 +v 0.001000 -0.001000 0.001000 +v 0.001000 0.001000 0.001000 +v 0.001000 -0.001000 -0.001000 +v 0.001000 0.001000 -0.001000 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_0.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_0.obj new file mode 100644 index 0000000000000000000000000000000000000000..ffe662cd55202d9d33ff4d0c04d1896c55c15826 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_0.obj @@ -0,0 +1,1019 @@ +o mesh +v -0.011546 -0.003318 0.031194 +v 0.016505 0.007556 -0.039666 +v -0.013873 -0.014440 -0.013200 +v 0.015731 0.012482 0.002596 +v -0.017498 0.009220 -0.037502 +v 0.008196 -0.018379 0.010092 +v -0.015751 0.012678 0.004043 +v 0.001549 -0.018799 -0.038984 +v 0.017295 -0.010113 -0.015624 +v 0.016362 0.001352 0.028597 +v -0.000025 0.020262 -0.018918 +v -0.000723 0.019495 0.023439 +v 0.002471 0.007683 0.048021 +v -0.017202 -0.010646 0.009609 +v -0.019224 0.006025 -0.015998 +v -0.016580 -0.010847 -0.033107 +v 0.017470 0.010013 -0.019577 +v 0.000317 0.019275 -0.038983 +v 0.004608 -0.014743 0.029326 +v -0.000623 0.000668 -0.034896 +v 0.003253 -0.019843 -0.008069 +v 0.019690 -0.004076 0.011143 +v 0.016945 -0.010485 -0.034287 +v -0.016396 0.011235 0.022310 +v 0.000239 0.020168 -0.000978 +v -0.001912 -0.009508 0.044860 +v -0.009644 -0.017485 0.022707 +v 0.014027 0.014172 0.018146 +v -0.002264 -0.019823 -0.023807 +v -0.019851 -0.003122 -0.003418 +v -0.006253 -0.019441 0.003791 +v -0.002465 0.008906 0.033937 +v 0.019992 -0.000820 -0.004411 +v -0.011414 0.016573 -0.009734 +v -0.011728 0.016190 -0.026282 +v 0.009857 0.017749 -0.028658 +v 0.014718 -0.013515 -0.001162 +v 0.008558 -0.001850 0.040006 +v 0.016172 -0.011115 0.022870 +v -0.009279 0.001997 0.043986 +v 0.010615 0.017177 -0.009334 +v -0.020083 -0.001953 0.020636 +v -0.005879 0.019347 0.011470 +v -0.019910 0.000571 -0.027837 +v 0.019930 -0.001300 -0.025453 +v 0.010288 -0.017000 -0.025436 +v 0.009203 0.011738 0.029578 +v -0.019974 0.001826 0.008071 +v 0.006709 0.018814 0.009155 +v 0.001053 -0.020224 0.019590 +v -0.012132 -0.000894 -0.037497 +v -0.014602 -0.013943 -0.001464 +v -0.005976 -0.010753 -0.037420 +v -0.019104 -0.005905 -0.017876 +v 0.005663 -0.008280 -0.036456 +v -0.006387 0.010647 -0.037384 +v 0.019472 0.004611 0.018544 +v -0.000996 -0.004475 0.035151 +v 0.005803 0.010067 -0.036971 +v -0.012743 -0.015390 -0.023902 +v -0.018464 0.007972 -0.005430 +v 0.017742 0.009621 -0.008035 +v 0.020012 0.000847 -0.015363 +v 0.017940 0.009211 -0.029750 +v -0.016242 -0.010197 0.025385 +v 0.010215 -0.006473 0.031071 +v -0.008549 0.014598 0.028156 +v -0.000929 0.020156 -0.029007 +v -0.006627 -0.019041 -0.006365 +v -0.005545 -0.012399 0.030282 +v 0.010046 -0.017257 -0.014905 +v 0.020006 -0.000698 -0.035422 +v 0.010066 0.000872 -0.036481 +v -0.010870 -0.017306 0.012733 +v 0.019799 0.003116 0.004448 +v 0.003632 -0.019840 0.001567 +v 0.010549 0.017264 -0.019116 +v -0.013490 0.005855 0.029677 +v -0.006889 -0.018561 -0.032196 +v -0.014474 0.013948 0.013483 +v 0.015695 -0.012435 0.012852 +v 0.010097 -0.016998 -0.035543 +v 0.006616 0.006855 0.037117 +v -0.008878 0.018138 -0.000642 +v 0.005765 -0.005588 0.048041 +v -0.001984 0.020166 -0.010023 +v -0.017728 0.009440 -0.025247 +v 0.017664 0.009350 0.011008 +v 0.009707 -0.017527 0.019805 +v -0.005436 -0.019176 -0.015343 +v 0.017108 -0.010423 -0.025278 +v -0.014289 0.013966 -0.017608 +v 0.012532 0.015639 -0.037249 +v 0.009271 0.017858 -0.000740 +v -0.009341 0.017625 0.019490 +v -0.019047 0.006384 0.015578 +v -0.000951 -0.020224 0.011124 +v 0.003615 -0.019526 -0.030295 +v 0.007760 0.017817 0.023674 +v 0.016314 0.009658 0.024965 +v 0.018846 -0.007009 0.002302 +v -0.007867 0.018464 -0.034689 +v 0.019571 -0.003734 0.020753 +v -0.006879 0.001701 0.036026 +v -0.003966 0.008187 0.042879 +v -0.007362 -0.005201 0.040481 +v 0.002507 0.019865 0.016091 +v 0.018421 -0.007892 -0.007814 +v 0.001781 0.014985 0.029539 +v -0.016245 -0.012021 0.017612 +v -0.018526 -0.007419 -0.025681 +v 0.008369 0.001927 0.047542 +v -0.019743 0.000940 -0.036126 +v -0.018543 -0.007523 -0.010125 +v 0.002340 -0.019927 -0.016149 +v -0.007577 0.018628 -0.018231 +v -0.019429 -0.005244 0.003980 +v -0.002657 -0.018458 0.026106 +v 0.015277 -0.005202 -0.039629 +v -0.017214 -0.006311 -0.039442 +v -0.012561 -0.014446 -0.038452 +v 0.005363 -0.008332 0.036672 +v -0.020031 0.000447 -0.010929 +v 0.012345 -0.015728 -0.007922 +v 0.013396 -0.014823 0.006030 +v -0.007426 -0.004148 0.047818 +v -0.019713 -0.004509 0.012921 +v -0.019756 0.003128 0.000522 +v -0.012522 -0.016064 0.005597 +v 0.005070 0.019579 -0.013714 +v -0.017444 -0.000864 0.027663 +v 0.000125 0.020184 0.006398 +v 0.010595 0.001502 0.033015 +v 0.013318 0.014981 0.009535 +v -0.012417 0.014178 -0.039169 +v 0.012012 -0.011586 -0.039814 +v 0.005781 0.019277 -0.034305 +v -0.015581 0.012567 -0.031532 +v -0.010730 0.017062 0.006499 +v 0.011425 -0.012686 0.027897 +v -0.006915 0.003768 -0.035863 +v -0.019106 0.004502 0.023298 +v 0.016675 -0.005681 0.027322 +v 0.001011 0.002819 0.035745 +v 0.018948 0.006531 -0.001649 +v 0.014929 0.013501 -0.025139 +v -0.005340 -0.017746 -0.039290 +v 0.014582 0.013946 -0.014072 +v 0.005220 0.019564 -0.023789 +v -0.014203 0.014275 -0.002854 +v -0.005573 -0.019553 0.016495 +v -0.016415 0.011550 -0.010903 +v -0.019999 0.000698 -0.020198 +v 0.014380 0.014042 -0.004077 +v 0.008974 -0.017878 -0.002149 +v -0.000445 0.007889 -0.035717 +v 0.004555 -0.019466 -0.022908 +v 0.005299 0.019501 -0.006094 +v -0.018771 0.006794 -0.031360 +v -0.018277 0.008483 0.009399 +v -0.000462 -0.006138 -0.035534 +v 0.008780 0.017966 0.017170 +v 0.019712 0.004117 -0.021308 +v -0.016367 -0.011440 -0.019918 +v 0.018866 0.007087 -0.013966 +v 0.000688 -0.010886 0.033022 +v -0.019363 -0.004312 -0.032405 +v 0.019337 -0.005110 -0.019132 +v 0.019847 0.002665 0.010867 +v -0.006477 -0.003462 -0.035844 +v -0.002220 -0.019993 -0.001819 +v -0.006764 -0.007187 0.033794 +v 0.005726 0.015976 -0.039850 +v 0.000096 -0.012700 -0.037781 +v 0.002306 0.008401 0.041702 +v 0.019220 -0.005748 -0.030715 +v 0.014369 -0.013755 -0.020624 +v -0.011531 -0.009424 0.029551 +v -0.017820 -0.009194 -0.004096 +v -0.003551 0.019695 0.017830 +v 0.013440 -0.014684 -0.030262 +v -0.012710 0.005329 -0.038207 +v 0.019831 0.003221 -0.030622 +v 0.005716 -0.018427 0.024480 +v -0.006085 0.005555 0.048062 +v -0.008167 0.008668 0.031095 +v 0.006005 -0.013957 -0.039072 +v -0.006370 0.019083 -0.025249 +v -0.005379 0.016196 -0.039870 +v 0.012654 0.006396 0.029946 +v 0.015589 0.001298 -0.039173 +v 0.018448 -0.007935 0.015956 +v 0.017665 -0.009787 0.007698 +v -0.013174 -0.014965 -0.030207 +v 0.005662 -0.002035 0.034694 +v 0.019877 0.002544 -0.009590 +v 0.004557 -0.002394 -0.035026 +v 0.004214 0.010244 0.032581 +v 0.014530 0.013950 -0.031182 +v 0.012676 0.014444 0.024389 +v 0.004669 0.004389 -0.035423 +v -0.006529 0.019114 -0.006064 +v -0.010903 -0.007386 -0.037807 +v 0.011023 0.006771 -0.037420 +v 0.004438 -0.019822 0.014486 +v -0.008207 -0.018201 -0.021259 +v 0.007438 0.005636 0.042888 +v 0.003361 -0.008959 0.042191 +v -0.016418 -0.011589 0.003551 +v 0.019508 0.001390 0.023530 +v 0.008590 -0.018135 0.004101 +v -0.013148 -0.015293 -0.007493 +v -0.002470 -0.019880 -0.010406 +v 0.019495 -0.004560 -0.013346 +v -0.020130 0.000699 0.015385 +v 0.010480 0.017138 0.005012 +v -0.000269 0.013293 -0.037696 +v -0.005822 0.019318 0.004543 +v -0.013502 0.011088 0.027336 +v -0.017997 0.009037 0.000241 +v -0.002150 -0.008641 0.038901 +v 0.011574 -0.016325 0.014541 +v -0.018978 -0.007156 0.018527 +v -0.010277 -0.017537 -0.001660 +v 0.004750 0.019549 0.002268 +v 0.010261 -0.005148 -0.036975 +v 0.003164 -0.019935 0.007364 +v 0.017581 0.009531 0.016722 +v -0.019919 0.002358 -0.005724 +v 0.020037 -0.001508 0.001406 +v 0.020010 -0.000176 0.015835 +v -0.011813 -0.014145 0.026528 +v -0.003394 0.013219 0.030216 +v -0.002209 -0.019599 -0.034910 +v -0.012290 -0.016176 0.017902 +v -0.006339 0.018229 0.024023 +v -0.008633 -0.017962 -0.027052 +v 0.016028 -0.012004 -0.010455 +v 0.018890 0.006951 -0.034607 +v -0.009607 -0.017682 -0.010846 +v -0.006845 -0.019169 0.009603 +v -0.012530 0.014890 0.023381 +v -0.001701 -0.019706 -0.029292 +v -0.018665 -0.005308 0.024872 +v -0.006054 0.006792 0.037557 +v -0.017367 0.009987 -0.019484 +v -0.012063 -0.016044 -0.017989 +v -0.010296 0.017197 0.013971 +v 0.018316 0.008178 0.004548 +v 0.018482 0.008001 -0.024656 +v -0.000860 -0.014693 0.029731 +v 0.014234 -0.014056 0.018440 +v 0.018084 -0.008622 -0.002599 +v -0.017615 0.004253 -0.039612 +v 0.004613 0.019627 -0.029237 +v 0.008634 -0.017837 -0.020143 +v -0.010978 0.001598 0.032742 +v -0.016769 -0.001157 -0.039815 +v -0.019148 0.005929 -0.010818 +v -0.019503 0.004436 -0.023750 +v 0.007734 -0.018426 -0.010237 +v -0.014774 -0.013959 0.012802 +v -0.004024 0.019851 -0.014719 +v 0.006467 -0.009914 0.031612 +v -0.017329 -0.009893 -0.014481 +v -0.015211 -0.006022 0.028588 +v 0.016606 0.011475 -0.035132 +v -0.016112 -0.011724 -0.026933 +v -0.001226 -0.020098 0.003628 +v 0.009021 -0.002512 0.045208 +v -0.012171 0.015802 -0.033395 +v -0.009249 -0.002907 0.036392 +v -0.000905 0.020134 0.011605 +v 0.012186 0.011282 -0.039734 +v 0.014440 0.014056 -0.020166 +v -0.011124 0.016631 -0.021167 +v 0.005910 0.019326 -0.018653 +v -0.014572 -0.013781 0.021993 +v -0.000435 0.020151 -0.023908 +v 0.005035 -0.019112 -0.035403 +v -0.003097 0.019872 -0.034350 +v 0.008365 -0.018065 -0.030593 +v -0.007383 -0.016139 0.027385 +v 0.001490 0.009547 0.036811 +v -0.019730 -0.003253 -0.023122 +v 0.013165 -0.002620 0.030279 +v -0.016606 0.011388 0.017401 +v -0.015041 0.013168 -0.023510 +v 0.001803 -0.008440 0.047882 +v 0.008547 0.006900 0.032631 +v -0.004603 -0.019700 0.021277 +v 0.016592 -0.011410 0.003224 +v 0.012381 -0.015191 0.023146 +v -0.016641 0.007468 0.026361 +v -0.015749 0.012687 0.008988 +v 0.006560 0.015810 0.027910 +v -0.008324 0.018339 -0.013099 +v -0.003109 0.017215 0.027521 +v -0.016426 -0.011486 -0.008110 +v 0.019094 -0.006056 -0.024757 +v -0.020051 -0.000429 0.003825 +v -0.012255 0.015984 0.002071 +v 0.007264 -0.006156 0.042132 +v 0.008922 0.002209 0.037471 +v 0.004620 -0.019563 -0.003484 +v -0.018741 0.007235 0.004796 +v 0.019993 -0.002020 0.006169 +v 0.015962 -0.012149 -0.005669 +v -0.007954 0.018434 -0.029718 +v -0.019921 -0.001750 -0.015650 +v 0.003859 0.019578 0.020670 +v 0.013857 -0.014084 -0.034975 +v 0.010559 0.017286 -0.023969 +v 0.015484 0.012669 0.013638 +v -0.013463 0.014691 0.018706 +v -0.015014 -0.010520 -0.039430 +v 0.017739 0.005068 0.026030 +v 0.014635 0.013854 -0.008784 +v 0.019384 0.003923 -0.038207 +v 0.010044 0.017496 -0.033360 +v 0.019786 -0.003073 -0.008890 +v 0.017584 -0.009552 -0.020287 +v 0.003089 0.018264 0.025906 +v -0.006160 -0.007572 0.044378 +v -0.001876 0.020168 -0.005158 +v 0.010614 0.017242 -0.013993 +v 0.013728 -0.014403 -0.014921 +v 0.011163 0.016622 0.013418 +v -0.010461 -0.016793 -0.034574 +v -0.002343 0.008243 0.047620 +v 0.019156 -0.005229 -0.035611 +v 0.019976 -0.000645 -0.020074 +v -0.019811 -0.003732 0.008394 +v -0.010723 0.009772 -0.038565 +v -0.008087 -0.014096 -0.039706 +v -0.008023 -0.000691 0.040464 +v 0.008722 -0.004858 0.036549 +v 0.019288 0.005731 -0.006240 +v -0.004156 0.019745 0.000105 +v 0.016423 -0.009554 -0.039117 +v 0.012126 -0.015905 0.001659 +v 0.001764 -0.018117 0.026537 +v 0.000588 0.020157 -0.014512 +v -0.008378 0.000193 0.047983 +v -0.011216 0.016751 -0.005026 +v -0.002034 -0.019900 -0.018102 +v 0.005668 -0.019360 0.019740 +v 0.009207 0.001573 0.042980 +v 0.010747 0.017059 -0.004837 +v 0.006177 0.019036 0.013539 +v 0.013199 0.010771 0.027961 +v 0.013350 -0.008723 0.028950 +v -0.006460 0.004020 0.041280 +v 0.001451 0.020047 -0.034287 +v 0.018735 -0.002503 -0.039316 +v -0.012591 0.015481 -0.013827 +v -0.003210 -0.000702 0.035873 +v -0.016957 0.010762 -0.015186 +v -0.018385 -0.008197 0.000924 +v -0.018048 -0.009298 0.013680 +v -0.001923 0.006982 0.038957 +v 0.008593 -0.015972 0.026656 +v 0.006360 0.005807 0.047426 +v 0.016108 0.011643 0.021107 +v 0.019774 0.003520 -0.026299 +v -0.019709 -0.003663 -0.008537 +v 0.017048 0.010718 -0.003310 +v -0.009308 -0.002661 0.044092 +v 0.019521 -0.004500 -0.001653 +v 0.018839 -0.002632 0.024868 +v 0.013724 -0.014435 -0.025278 +v 0.016942 -0.010690 -0.029550 +v -0.019939 0.002201 0.019385 +v 0.018243 -0.006893 0.023533 +v -0.006341 -0.019335 -0.000481 +v 0.016573 0.011354 0.006792 +v -0.016629 0.003302 0.027994 +v -0.008431 0.004896 0.033592 +v -0.014784 0.013375 -0.035703 +v 0.018337 0.007638 0.021824 +v 0.006117 -0.018931 -0.026812 +v 0.018981 0.006335 0.013671 +v 0.008930 0.017813 -0.037702 +v 0.019934 0.002173 -0.001421 +v -0.019577 -0.003629 -0.028216 +v -0.014862 0.013529 -0.007507 +v -0.004117 0.019799 -0.020348 +v -0.001384 -0.020282 0.015314 +v 0.010806 0.016678 0.020625 +v -0.018405 0.008040 0.019391 +v -0.017547 -0.010022 0.021251 +v -0.019622 0.004125 0.011571 +v -0.019416 -0.003180 -0.036743 +v 0.001490 -0.020012 -0.011849 +v -0.001024 -0.020047 -0.005816 +v 0.005352 0.002761 0.035385 +v -0.003083 -0.008929 0.034652 +v -0.012064 0.016140 0.010324 +v -0.002907 0.004182 0.035784 +v 0.016991 -0.010645 0.018833 +v 0.008267 0.012757 -0.038927 +v 0.000177 0.011572 0.031481 +v 0.012953 -0.001839 -0.037638 +v -0.017163 0.010587 0.012762 +v -0.013947 0.000785 0.030004 +v 0.012683 0.015562 -0.000529 +v -0.018751 -0.007610 0.007280 +v 0.001104 -0.019861 -0.026287 +v 0.006323 -0.018933 -0.015268 +v 0.017012 0.010905 -0.012791 +v 0.019992 -0.000821 -0.031199 +v 0.010228 -0.015456 -0.039324 +v 0.001517 -0.009682 0.036878 +v 0.008278 -0.018200 -0.006199 +v -0.003754 -0.007370 0.047795 +v -0.019402 0.000580 0.024403 +v -0.004757 0.000169 -0.035305 +v 0.003019 0.019831 0.010635 +v -0.008448 0.013503 -0.039633 +v 0.002741 -0.005907 0.034607 +v 0.009804 -0.002836 0.033227 +v -0.009513 -0.017655 -0.015327 +v 0.018991 0.006138 0.007949 +v -0.006751 0.018957 0.015376 +v -0.004646 -0.006093 0.037029 +v 0.001401 0.020156 -0.007865 +v 0.018457 -0.008090 0.011949 +v -0.018278 -0.007825 -0.030809 +v -0.018453 -0.007267 -0.035753 +v -0.012456 -0.016074 0.001601 +v -0.019188 0.005997 -0.019994 +v 0.012064 -0.016034 0.010589 +v -0.014002 -0.014014 -0.033980 +v -0.012945 -0.015775 0.009723 +v -0.005885 0.019330 -0.009968 +v -0.019330 0.004855 -0.027682 +v -0.002058 -0.015564 -0.039643 +v 0.008151 -0.018464 0.014039 +v -0.013712 -0.004641 -0.038727 +v -0.004505 0.006890 -0.035886 +v -0.014436 0.008425 -0.039909 +v 0.009319 -0.009098 -0.037634 +v 0.008852 0.008466 -0.034625 +v -0.008835 0.017408 -0.038468 +v 0.019113 -0.006147 0.007726 +v -0.014517 0.001916 -0.038832 +v 0.006703 -0.017795 -0.038778 +v -0.015475 0.012654 -0.027624 +v -0.020146 -0.000832 0.011693 +v 0.018329 -0.008108 -0.011702 +v -0.019665 0.002692 -0.032650 +v 0.019565 -0.004310 0.016791 +v -0.003448 -0.019999 0.007916 +v -0.015198 -0.013067 -0.016594 +v -0.016879 0.011037 -0.002891 +v 0.006421 0.019154 -0.009788 +v -0.010791 -0.011165 -0.039509 +v 0.019449 0.005197 -0.017282 +v -0.001434 0.020160 0.002869 +v -0.018453 -0.007746 -0.021839 +v 0.001908 -0.009531 -0.036548 +v 0.000727 -0.001053 0.035545 +v -0.019870 0.002015 -0.016582 +v 0.004593 0.019623 -0.001573 +v -0.009258 -0.018058 0.016498 +v -0.009151 -0.012759 0.029080 +v -0.019678 0.003565 0.004320 +v 0.003948 0.006121 0.044353 +v -0.001879 -0.019937 -0.014168 +v 0.012034 -0.015830 -0.018006 +v -0.009410 -0.018090 0.007021 +v 0.011912 -0.016042 -0.011679 +v -0.004439 -0.019870 0.012890 +v -0.012993 0.015111 -0.029761 +v -0.002481 -0.009192 -0.036505 +v 0.003977 0.019411 -0.038037 +v 0.019967 -0.000973 -0.012031 +v -0.005126 -0.019202 -0.026486 +v -0.013728 0.014800 0.006478 +v -0.006123 -0.019060 -0.010798 +v 0.000485 -0.019788 0.023266 +v 0.013298 -0.014847 -0.004410 +v 0.001073 -0.019940 -0.021617 +v 0.000419 0.007285 0.044794 +v 0.005332 -0.007979 0.045209 +v 0.005775 -0.005011 0.038826 +v 0.006411 0.003628 0.039827 +v -0.002290 0.003989 -0.035163 +v -0.004613 0.019637 -0.030827 +v -0.007657 0.018662 0.008278 +v 0.012613 0.003329 -0.037587 +v -0.005453 0.019090 -0.037568 +v -0.020035 -0.000331 -0.001004 +v -0.009410 -0.018076 0.002169 +v 0.006867 -0.006610 0.033783 +v 0.013013 -0.008124 -0.039059 +v 0.013169 0.001924 0.030337 +v 0.019139 0.006128 -0.009895 +v 0.001919 0.015679 -0.039425 +v 0.019957 0.001204 0.019893 +v -0.019040 0.006297 -0.002225 +v 0.003257 0.005673 0.036275 +v -0.019932 -0.003254 0.016347 +v 0.003749 0.019716 0.006442 +v -0.009835 -0.017670 -0.005274 +v -0.009137 -0.017148 -0.037949 +v -0.008734 0.000638 -0.036201 +v -0.009291 0.006262 -0.037004 +v -0.019283 -0.005396 -0.014288 +v -0.010434 0.011269 0.029253 +v -0.018888 0.006308 -0.035858 +v -0.006758 0.011862 0.030200 +v -0.001662 0.016021 -0.039612 +v -0.009925 -0.006515 0.031535 +v -0.001805 -0.002849 -0.035004 +v 0.008161 0.004720 -0.036189 +v 0.008258 -0.012578 0.029559 +v 0.005483 0.013042 0.029903 +v 0.006443 0.000629 -0.035329 +v 0.015176 -0.010376 0.026221 +v 0.002166 0.020053 -0.026669 +v 0.016946 0.010917 -0.022993 +v 0.000520 -0.019766 -0.032617 +v -0.005460 -0.019160 -0.018910 +v -0.004247 0.019707 0.008216 +v -0.000230 0.020008 0.019092 +v -0.005349 0.005300 0.044451 +v 0.010088 0.014408 0.027387 +v 0.004214 0.013095 -0.037969 +v 0.002457 -0.014967 -0.039185 +v -0.010097 0.017339 -0.016090 +v -0.019672 -0.004082 -0.000008 +v 0.015742 0.012387 0.010114 +v -0.015666 0.012753 0.000504 +v 0.009784 -0.001134 0.036331 +v -0.017543 0.009567 -0.033180 +v -0.004836 -0.006598 -0.036046 +v 0.012893 0.015459 -0.017186 +v -0.000273 0.006521 0.035567 +v 0.003433 0.007710 -0.035861 +v -0.014897 -0.013786 0.007578 +v -0.004077 -0.015888 0.028553 +v -0.006019 -0.003249 0.035053 +v 0.019323 0.005369 0.001797 +v 0.000003 -0.009720 0.041502 +v -0.006529 -0.018465 0.023995 +v -0.005358 -0.008084 0.041000 +v -0.017660 0.009468 -0.029388 +v 0.016708 0.011305 -0.016254 +v 0.014813 0.013136 -0.038122 +v 0.001190 0.004468 -0.035080 +v -0.014899 -0.002642 0.029418 +v -0.015768 -0.012282 -0.023253 +v 0.019215 0.006055 -0.028684 +v 0.001660 0.020122 -0.004390 +v 0.016347 0.011760 -0.027988 +v -0.007729 -0.009754 0.030885 +v -0.019994 0.000136 -0.023830 +v -0.008331 0.018286 -0.022384 +v -0.009181 0.016414 0.025289 +v 0.019460 -0.004865 -0.005077 +v 0.014492 -0.013708 0.009853 +v -0.007821 -0.018815 0.013241 +v 0.003349 -0.011856 0.031078 +v -0.013984 0.014380 -0.010888 +v -0.002253 -0.011971 0.031288 +v -0.004409 0.013330 -0.038184 +v -0.018203 0.008594 -0.008881 +v -0.016719 -0.011101 0.000181 +v 0.012805 0.015624 -0.028753 +v 0.006644 -0.018946 0.000227 +v -0.006247 -0.018668 -0.036130 +v 0.019674 0.003628 -0.034623 +v -0.012880 -0.015609 -0.004108 +v -0.019377 -0.005410 0.021541 +v 0.004460 -0.019517 -0.019502 +v -0.005838 0.007086 0.033896 +v 0.005328 0.007724 0.040281 +v 0.007111 0.018620 0.020353 +v 0.007265 0.018832 -0.031216 +v -0.009714 -0.003966 -0.036763 +v 0.008360 -0.002500 -0.036015 +v -0.019402 0.005174 0.008135 +v 0.016003 -0.011975 -0.018151 +v 0.011303 -0.016304 -0.022276 +v 0.002604 0.020037 -0.021685 +v 0.002780 -0.020057 0.010730 +v 0.019955 0.001416 0.007723 +v -0.008434 0.002480 0.038927 +v -0.007653 -0.018691 0.020219 +v 0.008959 -0.017399 0.023615 +v 0.013719 0.014652 0.006196 +v 0.010109 -0.009798 0.030045 +v -0.004793 0.019385 0.020951 +v -0.003140 0.010137 -0.036628 +v 0.015734 0.007233 0.027657 +v 0.007702 0.018814 -0.021460 +v 0.003472 -0.005554 -0.035434 +v 0.019575 -0.004109 -0.027451 +v -0.015374 -0.012984 -0.004580 +v 0.018787 -0.007069 -0.016471 +v 0.010865 -0.016808 0.006962 +v 0.006767 0.018903 0.005241 +v -0.019070 -0.006384 -0.005419 +v 0.019737 0.003140 0.014322 +v 0.001490 -0.020029 -0.002396 +v 0.010622 0.016949 0.009765 +v -0.017362 0.010245 0.006706 +v 0.009480 0.009886 -0.037711 +v 0.004925 -0.019482 -0.012279 +v 0.012686 0.015544 0.003069 +v 0.007958 0.018594 -0.015502 +v 0.008338 0.003871 0.034387 +v 0.019775 -0.003142 -0.016353 +v -0.013508 -0.011415 0.027425 +v 0.015423 -0.012563 -0.031901 +v 0.007868 -0.018178 -0.023484 +v -0.002403 -0.019088 -0.038498 +v -0.015064 0.011562 -0.039016 +v 0.001542 0.020142 -0.011177 +v 0.017103 -0.010646 0.000039 +v 0.007822 -0.001290 0.048104 +v 0.018368 -0.006107 -0.038871 +v -0.017823 0.008137 0.023348 +v -0.003744 0.019821 0.014312 +v 0.017013 0.010795 0.000069 +v 0.005669 -0.019312 0.005312 +v 0.003067 -0.007155 0.038722 +v 0.007887 0.018677 -0.026187 +v 0.014235 0.014310 -0.034440 +v 0.010955 -0.016526 -0.031917 +v 0.020038 -0.001041 0.012360 +v -0.019997 -0.001055 -0.005963 +v 0.001268 -0.008018 0.044678 +v -0.014815 -0.013580 -0.010183 +v -0.013782 -0.014529 -0.020328 +v 0.007814 0.018615 -0.004195 +v 0.014516 -0.013027 -0.038002 +v -0.010589 -0.016885 -0.030771 +v -0.009892 -0.001545 0.033502 +v 0.018700 -0.007066 0.019086 +v -0.009783 0.017685 0.003338 +v -0.004318 -0.013375 -0.038401 +v 0.007093 0.009671 0.030935 +v -0.010596 0.005480 0.031078 +v -0.011376 0.013635 0.026910 +v -0.015672 -0.011985 -0.036623 +v 0.005138 0.007639 0.034253 +v 0.008700 -0.012194 -0.038837 +v -0.003617 -0.019433 -0.031875 +v 0.011855 0.016093 0.016730 +v -0.000999 0.008724 0.041730 +v -0.018180 -0.008710 0.004103 +v 0.003502 -0.008981 0.033992 +v 0.016657 0.010499 -0.038331 +v -0.000703 0.020063 0.015880 +v -0.005383 -0.019163 -0.022422 +v -0.019831 -0.001572 -0.030655 +v -0.018233 0.008463 -0.012535 +v -0.009003 0.017913 -0.026629 +v -0.011558 0.002243 -0.037314 +v -0.019049 0.006277 0.001445 +v -0.000323 -0.020180 0.007315 +v -0.008637 0.018243 -0.008785 +v 0.003376 -0.012159 -0.037589 +v 0.007691 -0.018262 -0.033871 +v -0.012502 0.015584 0.015812 +v -0.015515 -0.012378 -0.030547 +v 0.018229 -0.008427 -0.027749 +v -0.013758 -0.014481 -0.026759 +v 0.015935 -0.002311 0.028779 +v 0.010784 -0.016857 -0.004818 +v 0.007660 -0.005550 0.045513 +v -0.009670 0.000210 0.036667 +v -0.005376 0.015257 0.028847 +v 0.003522 0.019835 -0.016656 +v -0.010989 -0.016761 -0.020900 +v -0.015029 0.013267 -0.013646 +v -0.006949 0.003121 0.046070 +v 0.019627 -0.003575 -0.021866 +v 0.006781 0.003028 0.044522 +v -0.019407 0.005001 -0.007347 +v 0.016328 -0.011701 0.015842 +v -0.007504 -0.008033 -0.036877 +v 0.012213 -0.015774 -0.001478 +v 0.007153 -0.003047 0.042562 +v 0.019167 0.000903 -0.039031 +v -0.003055 0.020001 -0.025612 +v -0.019830 -0.002793 -0.020033 +v -0.016660 0.011254 -0.006343 +v -0.011059 0.016544 -0.036454 +v -0.019164 -0.006622 0.015149 +v 0.001189 0.007068 0.038839 +v 0.013870 -0.005707 0.029530 +v 0.004614 -0.017068 0.027229 +v 0.001640 0.010183 -0.036462 +v -0.003566 0.008866 0.036846 +v 0.013446 -0.012972 0.025555 +v -0.000301 -0.020126 0.000666 +v 0.014982 0.004881 -0.039273 +v -0.005201 0.010044 0.032172 +v 0.008255 0.018429 -0.007258 +v 0.012364 0.016032 -0.021784 +v 0.013096 0.008387 -0.039112 +v -0.005106 -0.010304 0.032520 +v -0.011941 -0.015735 0.023825 +v 0.001950 -0.020069 0.004155 +v -0.015737 0.010277 0.025360 +v 0.019424 0.004371 0.021625 +v -0.007775 -0.005615 0.036607 +v -0.006087 0.007115 0.040630 +v 0.002422 0.000152 -0.034972 +v 0.019916 0.002137 -0.006530 +v 0.000061 0.017041 0.028014 +v 0.005455 0.019201 0.016672 +v 0.012447 0.015839 -0.007256 +v 0.018912 0.006902 -0.019782 +v 0.014821 0.004312 0.029310 +v -0.018917 -0.006721 -0.002369 +v 0.019526 -0.004744 0.004838 +v -0.011571 -0.016443 -0.012890 +v -0.014424 -0.014358 0.016662 +v -0.009958 -0.017357 -0.024357 +v 0.018759 -0.007157 -0.021791 +v 0.010364 0.004415 0.032100 +v -0.008549 0.018332 -0.003900 +v -0.000440 -0.007613 0.035460 +v -0.018927 -0.007218 0.010309 +v -0.002098 -0.020231 0.018288 +v -0.008450 -0.018148 -0.018152 +v -0.018146 0.008546 -0.022066 +v 0.015182 0.013190 -0.001254 +v 0.018293 0.008470 -0.016630 +v -0.011637 0.016447 -0.000885 +v 0.014006 -0.014268 0.014617 +v 0.008442 0.018108 0.011716 +v -0.017609 -0.009420 -0.018000 +v 0.009451 0.015483 -0.039598 +v -0.017282 -0.004157 0.027330 +v 0.011230 0.009085 0.029833 +v 0.000573 0.009324 0.033917 +v 0.000186 -0.020065 -0.008935 +v -0.013392 -0.007840 -0.039482 +v -0.012852 0.015262 -0.023442 +v -0.003991 -0.019722 -0.005038 +v 0.012316 0.015988 -0.011533 +v -0.019431 0.005025 0.018449 +v 0.017093 0.010745 -0.032205 +v 0.007889 0.018504 0.002470 +v 0.020022 0.001457 0.001941 +v -0.012509 -0.006327 0.030009 +v -0.002694 0.018817 -0.039223 +v 0.008808 0.018168 -0.011777 +v 0.019241 -0.005665 0.013650 +v -0.019757 -0.001209 -0.034032 +v 0.011766 -0.015953 -0.027827 +v -0.011389 -0.016346 -0.027932 +v -0.017287 -0.009970 -0.024710 +v -0.008839 -0.004344 0.033671 +v -0.014328 -0.014312 0.003973 +v -0.012708 0.008710 0.029224 +v 0.007054 -0.001809 0.037354 +v 0.018738 0.007088 -0.037730 +v -0.002552 -0.007977 0.042032 +v -0.006823 -0.003078 0.038448 +v 0.018241 0.000642 0.026388 +v 0.001596 -0.016066 0.028742 +v -0.016394 -0.011867 0.014178 +v 0.019920 0.001947 -0.012577 +v -0.018111 -0.008552 -0.007209 +v -0.008252 0.004800 0.037084 +v 0.019973 0.001074 -0.027962 +v -0.008168 0.004736 0.043742 +v 0.014312 -0.013765 0.021413 +v 0.001173 -0.020260 0.013827 +v 0.014203 0.012147 0.025453 +v 0.019944 0.001892 -0.023235 +v -0.018892 0.000733 -0.039032 +v -0.015230 0.012988 -0.020225 +v 0.015464 -0.012690 0.005627 +v -0.008052 -0.005267 0.043532 +v 0.014141 -0.014117 0.002845 +v 0.002356 0.019448 0.023197 +v 0.001256 -0.019690 -0.035465 +v -0.019345 -0.002361 0.024416 +v -0.015830 -0.012250 -0.013354 +v 0.013802 0.014244 0.021691 +v 0.018259 -0.008347 -0.031659 +v 0.018160 -0.008251 -0.035732 +v -0.012857 -0.015813 0.014273 +v 0.001995 -0.020008 -0.005436 +v 0.018888 0.007036 -0.031691 +v 0.015841 -0.002257 -0.039500 +v -0.017757 0.009561 0.003350 +v -0.019746 0.003395 -0.014034 +v 0.018177 0.008696 -0.005047 +v -0.014452 -0.012800 0.025066 +v -0.001089 -0.008511 0.047895 +v -0.019753 0.003091 -0.002931 +v 0.009876 0.016201 0.024803 +v 0.018219 0.008694 -0.010857 +v -0.019720 0.003630 0.015020 +v -0.002903 0.020051 -0.017374 +v 0.016285 0.011876 -0.006972 +v -0.004125 -0.019832 0.001882 +v 0.012229 0.016044 -0.032164 +v -0.019594 -0.004161 -0.011703 +v 0.001857 0.020071 -0.029952 +v 0.003267 0.000775 0.035484 +v 0.006307 -0.005407 -0.035926 +v 0.014805 -0.013384 -0.008245 +v 0.001580 0.020008 0.013121 +v -0.006400 -0.018779 -0.029372 +v -0.013780 0.012875 0.025102 +v -0.009049 0.017533 0.022346 +v 0.015931 -0.012028 -0.022299 +v 0.017641 -0.009132 0.021408 +v -0.002374 -0.019681 0.023391 +v 0.012240 -0.015877 0.017286 +v -0.002504 -0.019816 -0.020961 +v 0.012523 -0.015140 -0.037265 +v -0.006053 -0.019515 0.006868 +v -0.004962 0.019580 -0.027678 +v -0.018161 0.008566 -0.017158 +v -0.018398 -0.007610 0.023233 +v 0.019604 -0.003520 -0.033390 +v -0.019903 0.001994 -0.008556 +v 0.001122 -0.002364 -0.034849 +v -0.014876 -0.008742 0.027864 +v 0.018162 -0.008706 0.004462 +v -0.004644 0.019680 -0.004036 +v 0.003088 -0.019736 0.022167 +v -0.012531 -0.015893 -0.001230 +v 0.017231 -0.010528 0.011235 +v -0.018428 0.008076 0.013410 +v -0.007713 -0.018748 -0.003765 +v 0.019756 0.003544 -0.004095 +v 0.015557 -0.012553 -0.013851 +v 0.005898 -0.004767 0.035671 +v -0.010185 0.017222 -0.032009 +v -0.012168 0.003194 0.030658 +v -0.017419 0.007030 -0.039254 +v 0.004118 0.008064 0.037525 +v 0.008999 -0.017762 -0.027881 +v 0.019628 0.004336 -0.014623 +v -0.009483 0.017818 0.011365 +v -0.015132 0.005532 -0.039847 +v -0.014754 0.013301 0.021383 +v -0.007628 -0.001787 0.046150 +v 0.011590 -0.000687 0.031587 +v 0.006520 0.007461 -0.036264 +v 0.017765 0.009217 0.008132 +v 0.008633 -0.017889 -0.017225 +v 0.017837 -0.009187 -0.005415 +v 0.007572 -0.000245 0.044479 +v -0.018875 0.006914 -0.024850 +v 0.007388 0.000639 0.039181 +v 0.001326 0.020145 0.002579 +v -0.017383 -0.009139 -0.037496 +v -0.000987 0.014896 0.029660 +v 0.005464 -0.019464 0.011069 +v 0.019989 -0.000314 -0.008841 +v -0.002976 0.019946 0.005141 +v 0.006902 -0.018989 0.017307 +v -0.018012 -0.009311 0.016430 +v -0.012361 0.015633 -0.018641 +v -0.016921 -0.010985 0.006895 +v -0.006930 0.008044 -0.036687 +v 0.017872 0.008921 0.019385 +v -0.001561 -0.016863 0.028055 +v -0.012125 -0.016129 -0.010223 +v -0.002896 0.018762 0.024941 +v 0.009985 -0.017342 0.000736 +v 0.015451 -0.012533 -0.028182 +v 0.012414 0.015964 -0.025483 +v -0.005937 0.016979 0.026800 +v -0.002675 0.011058 0.031960 +v 0.003964 -0.017654 -0.039527 +v -0.020093 -0.001031 0.008152 +v -0.016850 -0.007240 0.026736 +v 0.013666 0.014604 0.012211 +v 0.005888 -0.019150 -0.008369 +v -0.020004 0.001767 0.012879 +v -0.009393 -0.016527 0.025590 +v 0.006936 0.000222 0.035527 +v -0.001598 0.001798 0.035889 +v 0.000775 -0.012671 0.030775 +v -0.019906 -0.002803 0.005844 +v -0.011895 -0.016310 0.021173 +v 0.009306 -0.001404 0.042726 +v -0.018064 -0.003502 -0.039403 +v -0.017209 -0.009931 -0.029487 +v 0.016248 -0.011352 -0.036775 +v -0.004121 0.019830 -0.011954 +v -0.004451 -0.019535 -0.007886 +v -0.010044 0.017329 -0.018789 +v -0.008760 -0.010212 -0.038008 +v 0.004693 -0.006613 0.042971 +v 0.019616 -0.004439 0.002014 +v 0.019048 -0.006171 -0.009969 +v -0.020123 -0.000311 0.018429 +v -0.010242 0.017221 -0.024288 +v -0.014101 0.014176 -0.025880 +v -0.001413 0.020209 -0.012715 +v 0.008474 0.018146 0.007173 +v -0.019979 0.000452 -0.014116 +v 0.012241 0.013990 -0.039342 +v 0.003801 -0.019487 -0.025583 +v -0.006226 -0.006669 0.046899 +v 0.019902 0.002153 -0.019497 +v 0.006969 -0.018931 0.007622 +v 0.006801 -0.003209 0.046532 +v 0.019929 -0.001677 -0.028508 +v 0.015854 0.012070 0.018479 +v 0.018034 0.009200 -0.035774 +v -0.016307 0.011657 -0.017620 +v -0.006429 0.019147 0.001376 +v 0.013160 -0.004463 -0.038088 +v -0.018073 0.008834 0.015954 +v 0.017769 0.009455 -0.027104 +v -0.001695 0.020134 0.008841 +v -0.012029 -0.000662 0.031146 +v -0.005078 -0.017536 0.026692 +v 0.003945 -0.019967 0.017085 +v 0.016860 -0.009090 0.024631 +v -0.016668 -0.011103 -0.002666 +v -0.019709 -0.004591 0.019044 +v -0.004917 0.007217 0.046366 +v 0.001562 -0.019944 -0.019017 +v -0.012030 0.015704 0.020917 +v 0.018061 0.008755 0.001380 +v -0.003415 0.008732 0.040355 +v 0.016197 -0.011865 0.008398 +v -0.000768 0.019997 -0.036697 +v -0.005437 0.003810 0.036647 +v -0.018053 0.004115 0.025941 +v 0.019994 -0.000984 0.018439 +v -0.007603 -0.018466 -0.023801 +v 0.010086 -0.017364 0.017074 +v 0.016920 -0.010862 -0.003318 +v -0.019653 0.003466 -0.019490 +v 0.013604 0.014603 0.015472 +v 0.019249 0.005646 0.004844 +v -0.007730 -0.002827 0.041949 +v 0.007579 0.004476 0.037626 +v 0.010773 -0.015474 0.025298 +v 0.006030 -0.010714 -0.037338 +v 0.019565 0.004575 -0.012022 +v -0.019844 -0.001767 -0.025613 +v -0.001992 0.020060 -0.031391 +v 0.015803 0.012568 -0.010734 +v 0.008315 -0.008017 0.031978 +v 0.000712 -0.008746 0.039178 +v 0.003598 -0.006815 0.046908 +v 0.004272 0.005772 0.038756 +v 0.006854 -0.018669 0.022148 +v 0.012734 -0.015392 0.020130 +v 0.000443 0.018646 0.025606 +v -0.002911 -0.006342 0.034859 +v 0.018861 -0.006851 -0.000294 +v 0.019982 0.001644 -0.032684 +v 0.019584 0.004656 -0.023969 +v 0.016947 0.010525 0.013715 +v -0.009044 0.001838 0.041367 +v -0.002388 -0.011918 -0.037459 +v 0.017344 0.003499 -0.039754 +v 0.012434 0.015800 -0.003101 +v -0.001091 0.009560 0.036519 +v 0.000845 -0.020301 0.016630 +v 0.003255 0.012013 0.030723 +v 0.020030 -0.000913 0.008842 +v -0.014323 -0.001644 -0.038643 +v 0.005431 0.018823 0.023188 +v -0.002393 0.008308 0.044924 +v 0.018622 0.007299 0.017496 +v 0.005320 0.019519 -0.026758 +v 0.010010 -0.017313 -0.007893 +v -0.014406 0.013948 0.016400 +v 0.019982 -0.000998 -0.022625 +v -0.018977 0.006257 0.021157 +v 0.005475 0.007682 0.043000 +v -0.004152 -0.019526 -0.013045 +v -0.006032 -0.000672 0.035551 +v 0.004144 0.015677 0.028753 +v -0.006134 0.019148 -0.032830 +v -0.002510 0.020110 -0.022318 +v -0.006752 0.019004 -0.001777 +v -0.010392 0.017219 -0.011985 +v 0.017141 0.010417 0.003101 +v -0.013714 0.014732 -0.005574 +v 0.019862 -0.002718 0.014825 +v 0.003298 -0.002952 0.034934 +v -0.019496 -0.004286 -0.025730 +v -0.010295 -0.017331 -0.008421 +v 0.015864 -0.008082 0.027093 +v 0.002561 0.019956 0.000038 +v 0.020078 -0.000439 0.004179 +v -0.006499 -0.014415 0.029025 +v 0.004025 0.019771 -0.010809 +v 0.001033 -0.019848 -0.028822 +o kp.000 +v -0.001000 -0.001000 0.049000 +v -0.001000 0.001000 0.049000 +v -0.001000 -0.001000 0.047000 +v -0.001000 0.001000 0.047000 +v 0.001000 -0.001000 0.049000 +v 0.001000 0.001000 0.049000 +v 0.001000 -0.001000 0.047000 +v 0.001000 0.001000 0.047000 +o kp.001 +v -0.001000 -0.001000 -0.039000 +v -0.001000 0.001000 -0.039000 +v -0.001000 -0.001000 -0.041000 +v -0.001000 0.001000 -0.041000 +v 0.001000 -0.001000 -0.039000 +v 0.001000 0.001000 -0.039000 +v 0.001000 -0.001000 -0.041000 +v 0.001000 0.001000 -0.041000 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_1.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_1.obj new file mode 100644 index 0000000000000000000000000000000000000000..b3d6ce561ac8c3e65b064da860eb433c0b164c5c --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_1.obj @@ -0,0 +1,1019 @@ +o mesh +v 0.023777 -0.007505 -0.009256 +v -0.009502 0.081428 0.004679 +v -0.022812 -0.073778 0.007215 +v -0.022964 0.023559 0.011241 +v 0.014900 0.042804 -0.020516 +v 0.024279 -0.059209 -0.008294 +v -0.012816 -0.025497 0.022104 +v -0.011525 -0.034283 -0.022906 +v 0.011734 0.048094 0.022638 +v -0.009665 0.009404 -0.023503 +v 0.009384 0.007283 0.023731 +v 0.006551 -0.057871 0.024540 +v -0.020903 0.051343 -0.014440 +v -0.005837 -0.071591 -0.025040 +v 0.020671 -0.029599 0.014874 +v -0.025294 -0.009893 -0.003013 +v 0.025498 0.023214 0.001769 +v -0.019777 0.054159 0.016139 +v -0.025424 -0.043807 0.001680 +v 0.022665 0.061827 -0.000483 +v 0.017420 -0.033457 -0.018721 +v 0.002756 -0.070274 0.001361 +v 0.001285 0.064397 -0.014597 +v -0.015153 0.000243 0.020736 +v 0.015511 0.015849 -0.020311 +v 0.004408 -0.012764 -0.025182 +v -0.003564 0.027861 0.025351 +v -0.022282 0.026540 -0.012219 +v -0.022347 -0.061537 -0.012625 +v -0.016069 -0.054500 0.019667 +v 0.004630 -0.051567 -0.025369 +v -0.005049 0.033196 -0.024884 +v 0.022919 -0.070410 0.010961 +v 0.006487 -0.015458 0.024703 +v 0.003692 0.065245 0.011745 +v 0.022283 -0.005481 0.012241 +v 0.010252 0.080765 -0.003332 +v -0.006896 -0.074135 0.022208 +v 0.014261 -0.073388 -0.020189 +v 0.022068 -0.049965 0.012527 +v 0.003879 -0.036590 0.025211 +v 0.016363 0.026606 0.019495 +v 0.024349 0.042544 0.007486 +v -0.015711 -0.014071 -0.020250 +v -0.025362 0.040884 0.002447 +v -0.025469 0.009921 -0.002300 +v -0.015512 0.064114 -0.000343 +v 0.025405 -0.038504 -0.002176 +v -0.023993 -0.027678 -0.008748 +v -0.004659 0.051029 -0.024956 +v -0.003686 0.056458 0.025376 +v 0.018260 0.059769 -0.017309 +v -0.024183 -0.023266 0.008019 +v 0.010156 -0.074037 0.021271 +v -0.016535 0.036831 0.019572 +v 0.025488 -0.020897 0.000476 +v 0.025448 0.006648 -0.000831 +v -0.011438 -0.054423 -0.023013 +v 0.021809 0.029757 -0.013305 +v 0.019134 0.060827 0.015366 +v -0.019739 -0.038745 0.015948 +v 0.020107 -0.074331 -0.004426 +v -0.010343 -0.072689 -0.007686 +v -0.004902 0.078669 -0.010541 +v -0.021580 -0.044552 -0.013865 +v 0.024052 0.047147 -0.008096 +v -0.020524 0.000208 -0.014988 +v 0.006804 0.003000 -0.024561 +v 0.021493 0.011267 0.013685 +v 0.003558 -0.030316 -0.025433 +v -0.013803 0.016273 0.021656 +v -0.025333 -0.059316 0.002154 +v 0.017981 -0.048677 -0.018340 +v 0.016976 -0.018355 -0.019180 +v 0.001800 0.018720 -0.025365 +v 0.004293 0.080830 0.010044 +v -0.024152 0.000076 0.008383 +v 0.008703 0.065214 -0.002012 +v -0.001727 -0.003662 0.025540 +v -0.012012 0.061909 -0.019070 +v -0.003738 0.042002 0.025312 +v 0.011270 0.029047 -0.022907 +v -0.020342 -0.011998 0.015344 +v -0.008558 -0.042796 0.023917 +v -0.016789 0.037674 -0.018983 +v -0.025492 0.054764 -0.000412 +v -0.009578 0.063366 0.015191 +v 0.003337 -0.072467 -0.012105 +v -0.006056 -0.003609 -0.024732 +v 0.018609 0.001803 -0.017616 +v -0.009349 -0.072528 0.007206 +v -0.013729 0.022152 -0.021324 +v 0.018257 -0.016723 0.017785 +v -0.023674 -0.073440 -0.005917 +v 0.008117 0.053878 -0.024159 +v -0.020556 0.013262 -0.014885 +v 0.013914 -0.044997 0.021205 +v -0.017198 -0.071555 -0.019061 +v -0.018076 -0.067985 0.017642 +v 0.013154 -0.060602 -0.022148 +v 0.017325 -0.061686 0.018455 +v 0.023780 0.017075 -0.009298 +v 0.025128 -0.059377 0.004400 +v -0.002708 0.011457 0.025504 +v -0.010391 -0.012674 0.023421 +v 0.008650 0.061188 0.022655 +v 0.013310 -0.004395 0.021646 +v -0.005610 -0.060498 0.024696 +v 0.018381 0.038769 0.017638 +v 0.023344 -0.026478 -0.010287 +v 0.006935 0.020590 0.024576 +v -0.003462 0.064899 -0.002847 +v -0.001101 -0.025480 0.025466 +v -0.006900 -0.021217 -0.024631 +v -0.025542 0.028867 -0.000737 +v 0.008162 0.034179 0.024202 +v -0.023645 0.040067 -0.009457 +v 0.011847 -0.026973 0.022489 +v 0.025307 0.035737 -0.002279 +v -0.004576 -0.043969 -0.025339 +v -0.021354 0.010885 0.014159 +v 0.003947 0.042403 -0.025090 +v 0.000800 -0.072537 0.013340 +v 0.009329 -0.040430 -0.023962 +v -0.004399 0.073367 0.011104 +v 0.024189 0.053927 0.007789 +v 0.005333 -0.068550 -0.025281 +v 0.022967 0.030759 0.011055 +v 0.001637 -0.047643 0.025433 +v -0.017208 -0.025468 -0.018804 +v 0.013759 -0.007673 -0.021543 +v -0.023008 -0.050064 0.010699 +v 0.025441 -0.049837 -0.002265 +v -0.021876 0.061299 -0.009097 +v 0.025350 -0.010065 0.002485 +v -0.025482 -0.032331 0.001923 +v -0.022658 -0.015872 -0.011849 +v -0.024660 -0.051730 -0.006176 +v -0.022384 0.061298 0.008244 +v 0.023891 -0.039813 0.008891 +v 0.005081 0.074227 -0.010353 +v -0.011661 0.049547 0.022767 +v -0.010636 0.073528 -0.002741 +v -0.001815 -0.060419 -0.025732 +v 0.012658 -0.073103 0.009274 +v 0.009985 0.072946 0.005304 +v 0.021859 -0.068109 -0.013503 +v -0.000719 0.060912 -0.024280 +v 0.022879 -0.042485 -0.011587 +v -0.022057 0.044563 0.012888 +v -0.013751 0.047597 -0.021337 +v -0.016005 0.026549 0.020122 +v 0.002181 -0.068921 0.025319 +v -0.024963 0.000045 -0.005394 +v -0.014151 -0.044823 -0.021302 +v 0.019918 0.049748 0.015952 +v 0.025180 -0.030191 0.004299 +v -0.023349 0.034887 0.010252 +v 0.015058 0.063873 0.005746 +v -0.024495 -0.037541 -0.007016 +v -0.022253 -0.060841 0.011994 +v -0.019926 -0.034679 -0.016073 +v -0.025299 0.018191 0.003261 +v 0.023605 0.057129 -0.009465 +v 0.022751 0.020788 0.011516 +v 0.023347 0.006345 -0.010360 +v 0.008592 -0.022067 -0.024093 +v -0.024635 -0.011776 0.006608 +v -0.004774 0.064436 0.006787 +v 0.011844 0.063781 -0.011194 +v -0.025404 -0.021100 -0.001748 +v 0.023564 -0.017061 0.009664 +v -0.024378 0.018318 -0.007515 +v 0.022731 -0.016871 -0.011601 +v -0.010630 0.064564 -0.009226 +v 0.014930 0.017134 0.020565 +v -0.012486 -0.063939 -0.022492 +v 0.025485 -0.068832 0.001288 +v -0.006740 -0.033428 0.024527 +v 0.009799 -0.072220 -0.004787 +v -0.020307 -0.028056 0.015302 +v 0.024060 0.003008 0.008492 +v 0.019767 0.050035 -0.015964 +v 0.018021 0.002826 0.017926 +v -0.019488 -0.053169 -0.016636 +v -0.000225 0.008931 -0.025440 +v 0.009661 0.061983 -0.019989 +v -0.015171 -0.073215 0.000080 +v -0.008418 -0.073863 -0.016569 +v -0.014412 -0.003326 -0.021065 +v 0.003103 0.049043 0.025445 +v 0.022644 0.038637 -0.011522 +v 0.025007 0.014578 0.005292 +v -0.013247 0.058496 0.021906 +v -0.006970 0.042328 -0.024387 +v 0.015187 -0.036169 0.020374 +v 0.025429 -0.002396 -0.002033 +v -0.024531 0.048607 -0.006749 +v -0.001683 0.062870 0.019206 +v -0.007588 -0.051870 0.024202 +v -0.006771 0.003518 0.024754 +v 0.013948 -0.054023 0.021155 +v -0.002267 -0.015597 0.025484 +v 0.017690 -0.071239 0.018006 +v 0.002976 0.027963 -0.025200 +v 0.025468 0.050918 -0.000419 +v -0.006795 0.018008 -0.024469 +v -0.024241 0.051296 0.007918 +v -0.025388 -0.067844 0.001061 +v -0.003686 0.069846 -0.010209 +v 0.024896 0.027726 -0.005472 +v 0.007638 0.012587 -0.024285 +v 0.020201 0.021737 -0.015710 +v -0.011309 -0.066573 0.022605 +v -0.007854 -0.012781 -0.024311 +v -0.014437 -0.034520 0.021045 +v -0.017000 0.006750 -0.019064 +v 0.009756 -0.065651 0.023427 +v -0.012867 -0.074181 0.014710 +v 0.016030 -0.074174 -0.011968 +v -0.016630 -0.018447 0.019452 +v -0.009930 0.033578 0.023643 +v -0.023489 0.007092 -0.009978 +v -0.015555 -0.045498 0.020148 +v -0.020460 -0.003311 0.015313 +v -0.023876 -0.038629 0.008675 +v 0.023345 -0.051184 -0.010472 +v -0.005388 -0.071357 -0.000173 +v -0.004731 -0.029556 -0.025206 +v 0.019371 -0.059269 -0.016780 +v -0.013512 0.064120 0.007729 +v -0.024899 0.008429 0.005826 +v 0.000650 -0.074252 -0.020639 +v -0.009736 0.071110 0.005200 +v -0.006144 0.018938 0.024909 +v 0.017575 0.035269 -0.018476 +v -0.020077 -0.007983 -0.015721 +v 0.011611 0.063394 0.013361 +v 0.019341 -0.074144 0.003697 +v -0.009093 0.081428 -0.003928 +v 0.022506 -0.061006 0.011910 +v 0.001925 0.004635 0.025458 +v 0.014771 0.056232 0.020840 +v 0.006109 -0.006176 0.024836 +v 0.023829 -0.034835 -0.009240 +v 0.001942 -0.003874 -0.025410 +v -0.019595 0.018389 0.016517 +v 0.019760 -0.008418 -0.016135 +v -0.013963 0.008273 0.021549 +v 0.025079 -0.013848 -0.004544 +v 0.000565 -0.037702 -0.025714 +v -0.019052 0.059065 -0.016708 +v 0.009777 0.036835 -0.023489 +v 0.010051 0.021234 -0.023389 +v 0.019406 -0.041780 0.016499 +v 0.019315 0.009868 -0.016821 +v -0.022272 -0.069529 -0.012636 +v 0.012103 -0.029009 -0.022428 +v -0.003673 0.081135 0.010241 +v 0.005844 0.041642 0.024899 +v 0.008952 0.073053 -0.002755 +v -0.024902 -0.062739 -0.005312 +v -0.017461 0.061615 0.015486 +v 0.016248 0.063598 -0.004599 +v -0.013158 0.029931 -0.021678 +v 0.003656 0.073133 0.011152 +v 0.002316 0.081500 -0.009794 +v 0.009911 0.080702 0.004627 +v 0.003316 0.067483 -0.007041 +v 0.000726 -0.021750 -0.025622 +v -0.011048 0.054808 -0.022881 +v -0.007298 0.025772 -0.024304 +v 0.018911 -0.026121 -0.017169 +v 0.024912 -0.051799 0.005364 +v 0.001977 0.064463 0.002498 +v -0.000251 0.034722 0.025566 +v 0.013095 -0.012819 0.021810 +v -0.019429 0.020655 -0.016329 +v -0.025337 -0.051347 0.002714 +v 0.011356 -0.047715 -0.023108 +v -0.017600 0.047055 0.018512 +v -0.015328 -0.007684 0.020523 +v 0.022588 0.061320 0.008119 +v -0.002902 -0.052222 -0.025600 +v 0.013238 0.008141 -0.021847 +v -0.025337 -0.005177 0.003121 +v 0.024773 -0.066980 -0.006696 +v -0.014653 0.014267 -0.020773 +v 0.023649 -0.025046 0.009495 +v -0.019814 0.044098 -0.015897 +v -0.012074 0.042091 0.022581 +v -0.009033 -0.003709 0.024015 +v 0.025431 0.014620 -0.002152 +v 0.004458 0.027790 0.025154 +v 0.017004 -0.066539 -0.019208 +v -0.020730 0.029579 0.014981 +v 0.015067 0.053658 -0.020414 +v 0.025300 0.031536 0.003816 +v 0.015725 -0.040512 -0.020237 +v -0.025338 0.035876 -0.003087 +v -0.021154 0.034496 -0.013960 +v 0.025457 0.042947 -0.000775 +v -0.022480 0.061789 0.000169 +v -0.000221 -0.055135 0.025416 +v 0.011415 -0.014528 -0.022805 +v 0.006424 -0.059784 -0.024974 +v 0.025299 -0.030622 -0.003000 +v -0.000101 -0.071410 -0.005776 +v -0.007822 -0.020736 0.024404 +v 0.018765 -0.009517 0.017236 +v 0.012418 0.040263 0.022265 +v 0.002688 -0.044590 -0.025599 +v 0.000720 -0.074273 0.020324 +v -0.004907 0.062829 -0.018583 +v -0.010440 0.002280 -0.023214 +v -0.023543 -0.005818 -0.009877 +v -0.023809 -0.030319 0.008955 +v -0.016995 -0.074278 -0.012117 +v 0.009700 0.046662 -0.023443 +v 0.007765 -0.072392 0.014630 +v 0.005030 -0.028997 0.025025 +v -0.024135 -0.066874 0.007986 +v -0.025462 0.002696 0.001735 +v 0.022744 -0.000579 -0.011594 +v 0.007834 -0.050785 0.024191 +v -0.017391 -0.059538 -0.018817 +v 0.012520 -0.072545 0.001685 +v 0.025431 -0.043955 0.002258 +v -0.020035 -0.073455 0.013753 +v -0.021255 0.003544 0.014249 +v 0.002235 0.050000 -0.025266 +v -0.010857 -0.026955 -0.023206 +v 0.019769 -0.055681 0.015973 +v 0.015958 0.010331 0.019783 +v 0.025031 -0.003430 0.004790 +v -0.003641 0.002844 -0.025189 +v 0.017707 -0.023585 0.018301 +v 0.001163 -0.062092 0.025412 +v 0.003926 0.013299 0.025206 +v -0.022223 -0.018418 0.012500 +v -0.024829 0.028230 0.006064 +v 0.002562 0.059420 0.025290 +v -0.015508 -0.061323 0.020030 +v 0.017377 0.027213 -0.018676 +v 0.009503 -0.040354 0.023550 +v 0.008726 0.000093 0.023946 +v -0.010129 0.026523 0.023556 +v -0.018077 0.027170 -0.017882 +v 0.008071 0.066189 0.004951 +v -0.021782 -0.022423 -0.013389 +v -0.000971 -0.071761 0.006850 +v 0.002209 0.034686 -0.025279 +v 0.021575 0.043238 0.013595 +v 0.014138 0.033362 0.021197 +v 0.014623 -0.053785 -0.021175 +v -0.010632 0.036465 -0.023008 +v 0.025455 -0.062187 -0.002036 +v -0.002400 -0.040526 0.025337 +v -0.009088 0.065112 0.001322 +v -0.024546 -0.045051 -0.006788 +v 0.007260 -0.074143 -0.021707 +v 0.013715 -0.000461 -0.021542 +v -0.006333 -0.073249 0.013868 +v 0.020152 0.043419 -0.015502 +v -0.024383 0.030544 -0.007353 +v 0.012385 -0.019400 0.022225 +v 0.005759 -0.022041 0.024873 +v 0.010928 0.027844 0.023040 +v 0.018834 0.062199 -0.010492 +v 0.000482 0.018865 0.025557 +v -0.023817 0.055042 -0.009038 +v 0.007989 -0.006144 -0.024242 +v -0.022264 -0.074290 0.000417 +v -0.025499 0.048276 0.000304 +v 0.024574 -0.020928 -0.006845 +v -0.023127 0.016217 0.010882 +v 0.021503 -0.035923 0.013685 +v -0.013989 -0.072175 0.020783 +v -0.011800 -0.072228 -0.022558 +v -0.003358 0.049130 0.025385 +v 0.008288 0.054960 0.024259 +v -0.005177 -0.009063 0.025114 +v -0.020545 -0.055294 0.014734 +v -0.012749 -0.019916 -0.022346 +v -0.007594 0.061416 0.022698 +v 0.021402 -0.031195 -0.014163 +v -0.025403 -0.027625 -0.002411 +v 0.011291 -0.067592 -0.023163 +v 0.025164 0.020666 -0.004167 +v -0.004704 -0.066796 0.024907 +v -0.023112 -0.007119 0.010957 +v 0.004808 0.063149 0.018003 +v -0.015658 -0.073846 0.009026 +v -0.025431 -0.015024 0.000706 +v -0.024324 -0.055751 0.007296 +v -0.001566 -0.009150 -0.025505 +v -0.003182 -0.072367 -0.011224 +v -0.017498 -0.040194 -0.018574 +v -0.009644 -0.040263 -0.023772 +v -0.020852 0.038469 0.014823 +v -0.022161 -0.043438 0.012387 +v 0.019320 0.032624 0.016555 +v 0.008665 -0.034164 -0.024172 +v -0.007686 0.060067 -0.023760 +v 0.010308 0.013902 0.023322 +v -0.000706 -0.032003 0.025473 +v -0.024832 -0.015877 -0.005973 +v -0.003795 0.064758 0.013231 +v 0.019298 0.019877 0.016657 +v -0.024528 0.045022 0.007163 +v 0.023528 0.023481 -0.009853 +v -0.025502 0.021461 -0.002049 +v -0.017015 0.053621 -0.018940 +v -0.019207 -0.048972 0.016494 +v 0.024862 -0.044521 -0.006053 +v 0.018443 -0.048997 0.017483 +v 0.009410 -0.073232 -0.013129 +v 0.024355 -0.064903 0.007454 +v 0.020228 -0.038115 -0.015756 +v 0.022949 -0.072984 -0.009757 +v -0.022882 -0.054301 -0.011495 +v -0.025305 0.033811 0.002843 +v 0.025464 -0.056106 -0.001492 +v -0.008454 0.013335 0.024228 +v 0.007871 -0.072097 0.005605 +v 0.018636 -0.003199 0.017354 +v 0.020806 0.015730 -0.014989 +v 0.021317 -0.020663 0.013992 +v -0.007853 0.068963 -0.005577 +v -0.015922 0.062497 -0.012835 +v 0.024320 0.008980 0.007627 +v 0.020513 -0.065837 0.014928 +v 0.016635 0.044319 0.019240 +v 0.021728 0.055798 0.013304 +v 0.005208 0.059887 -0.024577 +v -0.002902 -0.066381 -0.025692 +v 0.020513 0.026041 0.015192 +v -0.010388 -0.057208 0.023153 +v -0.007830 -0.048966 -0.024535 +v -0.019083 -0.017662 -0.016866 +v 0.018413 -0.074332 0.010870 +v 0.024281 0.033482 -0.007709 +v -0.024483 0.024473 -0.007093 +v 0.025137 0.056530 -0.003752 +v 0.022246 -0.011912 0.012325 +v 0.009023 -0.033173 0.023745 +v 0.000625 -0.010127 0.025542 +v -0.008702 0.076176 0.008054 +v 0.013623 0.061656 0.018818 +v 0.011800 -0.059507 0.022398 +v 0.023458 0.036522 0.009929 +v 0.024643 0.026532 0.006854 +v 0.009128 0.069134 -0.007131 +v -0.025285 0.042488 -0.003199 +v 0.013988 -0.022860 -0.021435 +v 0.025269 0.057723 0.002781 +v 0.025318 -0.036840 0.003435 +v -0.016899 0.063272 -0.005961 +v -0.001525 0.040368 -0.025328 +v 0.004258 -0.042418 0.025121 +v -0.006850 -0.027622 0.024663 +v -0.008674 0.075083 -0.007973 +v -0.021537 -0.066606 0.013159 +v 0.024488 0.011706 -0.007242 +v -0.004784 0.064791 -0.012815 +v -0.024984 0.056389 0.005124 +v -0.015532 -0.031097 -0.020207 +v -0.003011 -0.017005 -0.025414 +v -0.020686 -0.028200 -0.015079 +v 0.000107 -0.071637 -0.025767 +v -0.007441 -0.062152 -0.024676 +v 0.018953 -0.072610 -0.016670 +v 0.023907 -0.045943 0.008849 +v -0.025441 -0.037519 -0.001363 +v -0.017858 -0.074054 -0.006457 +v 0.013690 -0.074302 0.015279 +v -0.019202 -0.064694 -0.017099 +v -0.022409 -0.038343 -0.012290 +v 0.011520 0.069210 0.000960 +v -0.000426 0.074990 -0.011697 +v -0.010800 -0.007238 -0.023146 +v 0.015428 0.021562 -0.020337 +v 0.025218 -0.071901 -0.003523 +v -0.000779 0.068165 0.009726 +v 0.022939 -0.055407 0.010917 +v -0.013343 0.041917 -0.021540 +v 0.016804 -0.030844 0.019152 +v -0.015784 0.053383 0.020125 +v 0.024447 -0.072643 0.005723 +v -0.022776 0.045591 -0.011279 +v -0.013172 0.021905 0.022100 +v 0.021666 0.004781 0.013331 +v 0.024854 0.048703 0.005654 +v 0.025255 0.037215 0.003649 +v -0.025041 0.059171 -0.004161 +v -0.021997 -0.034087 0.012758 +v -0.022676 0.056117 0.011712 +v -0.024457 -0.045353 0.007017 +v -0.011622 0.075840 0.002303 +v -0.018687 -0.033115 0.017213 +v -0.001908 0.024500 -0.025339 +v -0.024410 0.012044 -0.007408 +v -0.018599 -0.047565 -0.017568 +v -0.025336 -0.026697 0.003137 +v -0.024673 -0.017900 0.006412 +v 0.014588 -0.066497 0.020690 +v 0.025271 -0.016061 0.003298 +v 0.000431 0.055538 -0.025363 +v 0.024865 0.001730 -0.005776 +v 0.022169 -0.056107 -0.012846 +v 0.017131 -0.012415 -0.019017 +v -0.018044 0.063082 0.004636 +v 0.025288 0.001727 0.002695 +v -0.025404 -0.055337 -0.002005 +v 0.023274 -0.031610 0.010388 +v -0.008956 0.055364 0.023987 +v -0.015014 -0.050840 -0.020723 +v -0.013382 -0.039935 0.021680 +v 0.011700 0.076982 0.000465 +v -0.002198 -0.072689 0.024775 +v 0.008108 0.076940 0.008643 +v -0.024098 -0.021357 -0.008492 +v 0.025209 -0.008314 -0.003993 +v -0.006324 -0.036012 -0.024909 +v 0.005172 -0.073603 0.023583 +v -0.024367 -0.068141 -0.007734 +v -0.000352 0.077036 0.011807 +v 0.001959 0.062637 -0.019763 +v -0.025446 0.015414 -0.002285 +v 0.022084 -0.062646 -0.012991 +v -0.023169 -0.048878 -0.010737 +v -0.005989 -0.056717 -0.025092 +v -0.001711 0.045841 -0.025304 +v -0.004854 -0.046698 0.024911 +v 0.022960 0.049797 0.011150 +v 0.006516 0.078893 -0.006848 +v 0.024361 0.041465 -0.007198 +v 0.020317 -0.020691 -0.015587 +v 0.013873 0.001832 0.021287 +v 0.022833 0.061417 -0.006225 +v 0.002209 -0.056415 -0.025703 +v 0.017348 0.063405 0.000708 +v -0.018579 0.006937 0.017521 +v -0.016719 -0.028134 0.019348 +v 0.007486 0.063841 -0.014396 +v -0.018111 0.013421 0.018054 +v -0.011380 -0.048313 0.022720 +v -0.004094 0.013373 -0.025107 +v 0.012464 0.022727 0.022245 +v -0.024469 -0.057372 -0.007354 +v -0.011431 0.065430 -0.003705 +v -0.024415 0.039339 0.007488 +v 0.006862 0.069219 0.009458 +v 0.024714 0.020050 0.006614 +v 0.002252 -0.063861 -0.025706 +v -0.006751 0.068801 0.009692 +v 0.019783 -0.044088 -0.016340 +v -0.023334 0.001793 -0.010361 +v 0.006839 0.032222 -0.024463 +v 0.018836 -0.053835 -0.017432 +v -0.020763 0.005494 -0.014702 +v 0.013408 0.058569 -0.021526 +v 0.022442 0.052042 -0.011867 +v -0.005449 0.036029 0.025005 +v 0.008711 -0.055074 -0.024248 +v 0.014814 -0.073036 -0.003368 +v -0.022918 -0.032144 -0.011334 +v 0.024030 -0.008633 0.008400 +v -0.019420 -0.062155 0.016225 +v -0.007537 0.045530 0.024450 +v -0.019801 0.023626 0.016249 +v -0.015149 0.031924 0.020793 +v -0.017987 0.048591 -0.017882 +v -0.025088 -0.032410 -0.004488 +v 0.003174 -0.001866 0.025382 +v 0.016588 0.062741 0.010598 +v 0.013488 0.062418 -0.015946 +v 0.000798 -0.020608 0.025563 +v -0.024861 0.013822 0.006060 +v -0.022290 0.017413 -0.012265 +v -0.023599 0.005311 0.009787 +v -0.019902 -0.021665 0.015826 +v 0.018624 0.055260 0.017432 +v 0.004884 -0.071900 -0.007123 +v -0.011602 0.003678 0.022879 +v -0.025386 0.023354 0.002845 +v 0.013708 0.033505 -0.021435 +v 0.021991 -0.011956 -0.013036 +v -0.025252 0.005042 -0.003935 +v -0.024069 -0.010777 -0.008596 +v -0.012262 -0.019046 0.022454 +v -0.013898 -0.074255 -0.016202 +v -0.015814 -0.012763 0.020168 +v -0.011434 -0.030359 0.022807 +v 0.015477 0.047855 -0.020120 +v -0.005393 0.065035 -0.007660 +v 0.005218 0.022445 -0.024876 +v -0.024449 -0.060835 0.006917 +v 0.002897 0.065279 -0.002426 +v -0.015285 0.002188 -0.020455 +v 0.004193 -0.018078 -0.025233 +v -0.017840 0.041550 0.018308 +v -0.025445 -0.001745 -0.000683 +v 0.025225 -0.025631 -0.003805 +v -0.003161 -0.073306 -0.016178 +v 0.022092 0.011388 -0.012774 +v -0.025331 -0.047788 -0.002634 +v 0.001425 0.054522 0.025545 +v 0.001453 0.069161 -0.011401 +v 0.017991 -0.003140 -0.018272 +v 0.013636 -0.035013 -0.021637 +v 0.025217 -0.025174 0.004066 +v 0.005434 -0.073574 -0.017065 +v -0.025191 -0.037839 0.003901 +v 0.021583 0.016275 0.013583 +v -0.021015 0.049180 0.014517 +v -0.009713 -0.072223 0.002181 +v 0.023585 -0.073985 0.000715 +v 0.004699 0.008416 -0.025024 +v 0.025354 0.010868 0.002010 +v 0.001433 0.013602 -0.025367 +v 0.008192 -0.010616 0.024119 +v -0.011691 0.069045 -0.000325 +v -0.002835 0.061191 0.024018 +v 0.004173 0.037002 0.025209 +v 0.004224 -0.025224 -0.025288 +v 0.021247 -0.000582 0.014079 +v 0.015628 0.051435 0.020184 +v -0.002909 0.006472 0.025484 +v 0.024587 -0.003215 -0.006806 +v 0.021608 -0.047861 -0.013774 +v -0.020443 -0.013192 -0.015343 +v 0.000950 0.063912 0.007270 +v 0.001195 0.002029 -0.025438 +v -0.009374 0.047827 -0.023549 +v 0.025513 0.028073 -0.000614 +v 0.007067 -0.071720 -0.000478 +v -0.016611 0.032340 -0.019184 +v -0.014724 -0.009111 -0.020921 +v -0.006217 -0.074280 -0.020984 +v -0.011340 0.063174 -0.014324 +v -0.011651 0.017937 -0.022568 +v -0.025325 -0.021613 0.003085 +v 0.009461 -0.001555 -0.023666 +v -0.008809 0.030335 -0.023756 +v 0.020044 0.055591 -0.015651 +v -0.004163 -0.074069 0.018223 +v 0.011403 0.015214 -0.022785 +v 0.011720 0.064799 -0.006483 +v -0.014972 0.058383 -0.020493 +v -0.022144 -0.024560 0.012548 +v -0.005886 -0.071975 -0.006013 +v 0.024642 -0.039783 -0.006853 +v -0.015168 -0.036468 -0.020523 +v -0.007700 -0.066949 -0.024582 +v 0.025373 -0.063868 0.002716 +v -0.023067 -0.012935 0.010977 +v -0.023423 0.035203 -0.009810 +v -0.021920 0.058263 -0.012968 +v 0.020727 0.034143 -0.014848 +v 0.017916 0.014417 0.018022 +v 0.007136 0.065167 -0.009833 +v -0.018029 -0.002405 -0.018081 +v -0.011135 0.080128 0.000307 +v 0.008141 -0.064297 -0.024498 +v 0.000499 0.045076 0.025583 +v 0.008487 0.041714 -0.023907 +v -0.020889 -0.057366 -0.014950 +v 0.025480 0.018487 0.002001 +v -0.025340 -0.042028 -0.002791 +v -0.017655 -0.073878 0.004045 +v 0.024983 -0.020587 0.005162 +v 0.000560 0.040012 0.025559 +v -0.024239 0.019777 0.008001 +v -0.016586 -0.023427 0.019488 +v -0.016188 -0.066929 -0.019936 +v -0.020971 0.039787 -0.014420 +v 0.024772 -0.054864 -0.006571 +v -0.025268 -0.005107 -0.003955 +v 0.013618 -0.073147 -0.008082 +v 0.023597 0.013097 0.009719 +v 0.009829 0.043942 0.023608 +v 0.022779 0.044001 -0.011303 +v -0.008557 -0.037684 0.023963 +v -0.013758 -0.073001 -0.004505 +v -0.002711 0.000894 0.025487 +v -0.017967 0.062347 0.010917 +v 0.003318 -0.072057 0.008631 +v -0.018014 0.015883 -0.017994 +v -0.025457 -0.009672 0.001946 +v 0.019197 0.008603 0.016718 +v 0.020220 -0.015330 -0.015680 +v 0.024945 0.007456 -0.005459 +v -0.025460 0.012734 0.001604 +v 0.007787 -0.028754 -0.024412 +v 0.005800 -0.062424 0.024768 +v 0.023846 -0.001561 0.009136 +v 0.007569 0.049651 0.024438 +v -0.019245 0.033499 0.016917 +v 0.006289 0.017936 -0.024646 +v 0.021519 -0.004439 -0.013800 +v 0.008233 0.064903 0.010327 +v -0.016618 0.020150 0.019589 +v 0.015990 -0.028659 -0.019977 +v 0.009260 0.074476 -0.007126 +v 0.004698 -0.039697 -0.025320 +v -0.003347 0.028929 -0.025184 +v -0.002619 0.064456 0.002628 +v -0.010123 -0.070997 0.023129 +v 0.008653 -0.070087 0.023876 +v 0.013765 -0.071199 0.021154 +v -0.023558 0.009953 0.009942 +v -0.009680 0.066649 0.006895 +v 0.021012 0.004104 -0.014472 +v 0.023916 -0.013300 -0.008937 +v 0.003749 -0.072134 0.016814 +v 0.006088 -0.046595 0.024765 +v 0.010950 0.018417 0.023020 +v -0.016556 0.044455 -0.019181 +v 0.012851 0.064963 -0.000126 +v -0.000990 0.066599 -0.008265 +v -0.005696 -0.071734 0.004358 +v -0.003266 -0.023921 -0.025420 +v -0.005446 0.008373 -0.024849 +v 0.001020 0.064176 0.015264 +v 0.016236 0.005015 -0.019788 +v -0.004993 0.023556 0.025140 +v -0.022958 0.028760 0.011110 +v 0.014872 -0.049628 0.020489 +v -0.019064 -0.043121 0.016941 +v 0.008555 0.025565 -0.023942 +v 0.014798 -0.044886 -0.020978 +v -0.010672 -0.059234 -0.023426 +v -0.009199 -0.017390 -0.023871 +v -0.006903 -0.015258 0.024705 +v 0.021251 0.038764 0.014110 +v -0.020676 0.029990 -0.014645 +v 0.011670 0.003382 -0.022702 +v -0.000250 -0.033272 -0.025677 +v -0.006483 0.055804 -0.024558 +v -0.004342 0.074313 -0.008916 +v 0.016704 -0.062058 -0.019445 +v -0.016990 -0.003726 0.019187 +v 0.009830 -0.074160 -0.017783 +v -0.013643 0.009617 -0.021431 +v 0.005283 0.008513 0.025045 +v 0.018908 0.039309 -0.017086 +v -0.012583 0.062054 0.018234 +v 0.012576 0.024748 -0.022164 +v 0.021605 -0.044320 0.013548 +v 0.003780 -0.053159 0.025169 +v -0.010551 -0.062193 0.023036 +v -0.012310 0.037186 0.022522 +v -0.024821 -0.070050 0.004924 +v -0.018537 0.002165 0.017508 +v -0.002507 0.019875 -0.025298 +v 0.021392 0.059773 -0.013219 +v -0.009773 0.022185 -0.023436 +v -0.016822 0.058312 0.019281 +v 0.000829 0.023290 0.025586 +v -0.025305 -0.071702 -0.001512 +v 0.021270 0.062219 0.003708 +v -0.010220 -0.073187 -0.012086 +v 0.008905 0.007658 -0.023867 +v 0.007756 -0.044529 -0.024520 +v -0.004833 -0.072405 0.009797 +v 0.013251 0.006674 0.021708 +v -0.001481 -0.070319 0.002570 +v -0.003099 -0.035790 0.025274 +v -0.021683 -0.004212 -0.013531 +v -0.021884 -0.073485 -0.010755 +v 0.005733 0.038022 -0.024737 +v -0.003623 -0.019807 0.025311 +v 0.012187 0.052993 0.022427 +v 0.025556 -0.033359 0.000418 +v -0.010402 -0.002873 -0.023291 +v -0.022676 -0.070254 0.011010 +v 0.010479 -0.010269 -0.023254 +v 0.020584 -0.070699 0.014759 +v 0.024132 0.052093 -0.007827 +v -0.025112 -0.063524 0.003526 +v -0.012032 -0.013539 -0.022553 +v -0.016797 -0.073406 0.017667 +v 0.025552 -0.027577 0.000124 +v -0.020011 -0.071740 -0.015733 +v -0.012932 -0.052474 0.021913 +v -0.006559 0.030966 0.024737 +v 0.024045 -0.035483 0.008455 +v -0.025314 -0.066555 -0.003090 +v 0.025142 0.046108 -0.003742 +v -0.018814 -0.074033 -0.002207 +v -0.017656 0.010986 -0.018381 +v 0.012035 -0.018806 -0.022476 +v 0.015008 0.038102 -0.020513 +v -0.010302 -0.074365 0.019547 +v 0.010819 -0.047485 0.022924 +v -0.008015 0.007639 0.024365 +v -0.001904 -0.001907 -0.025437 +v 0.025279 -0.018594 -0.003281 +v -0.020054 -0.016417 0.015649 +v -0.016248 -0.021371 -0.019744 +v 0.023113 0.025243 0.010672 +v 0.021300 -0.025429 0.014003 +v -0.006955 0.081393 -0.007665 +v -0.014085 -0.057493 -0.021463 +v 0.007154 0.063945 0.014382 +v -0.007727 0.040668 0.024409 +v 0.019224 0.030634 -0.016835 +v -0.004419 -0.055927 0.024985 +v 0.025284 0.041589 0.003289 +v 0.004389 -0.008478 -0.025164 +v 0.016414 0.021451 0.019409 +v 0.005096 -0.001005 -0.024988 +v 0.008518 -0.072678 0.010282 +v 0.024437 -0.013666 0.007209 +v 0.025422 -0.042806 -0.001864 +v -0.002724 -0.074094 -0.023444 +v 0.013476 -0.040760 0.021572 +v 0.015713 -0.008328 0.019981 +v -0.021604 0.060108 0.012798 +v 0.000406 -0.027441 -0.025638 +v 0.018336 0.018503 -0.017776 +v 0.016559 -0.012949 0.019324 +v 0.025070 -0.034536 -0.004680 +v 0.024745 -0.050410 -0.006522 +v -0.002403 -0.047990 -0.025629 +v 0.016937 -0.056984 0.018873 +v 0.009675 0.058860 -0.023549 +v -0.011985 -0.048218 -0.022677 +v 0.002234 -0.016604 0.025488 +v 0.025169 0.007041 0.003859 +v -0.024566 -0.006897 0.006966 +v 0.025384 0.045757 0.002463 +v -0.006998 -0.008524 -0.024524 +v -0.008531 0.077229 -0.004173 +v 0.003566 -0.073493 -0.024160 +v 0.009367 -0.071284 -0.024018 +v 0.008625 0.038557 0.024061 +v 0.003827 0.032785 0.025286 +v -0.013359 -0.003409 0.021897 +v -0.020646 0.062250 -0.004285 +v -0.023721 -0.041298 -0.009564 +v 0.019765 -0.065149 -0.016327 +v 0.008155 -0.016809 -0.024226 +v 0.016712 -0.057497 -0.019541 +v -0.025172 0.050721 0.003841 +v -0.006994 0.062800 0.018480 +v 0.015314 -0.073238 0.004767 +v -0.003359 -0.050634 0.025118 +v -0.024779 -0.024658 -0.005922 +v -0.015921 -0.049678 0.019838 +v 0.005567 0.046263 -0.024747 +v -0.025276 0.059318 0.002088 +v -0.007065 0.050940 0.024635 +v -0.018352 -0.008317 0.017689 +v -0.013916 0.064512 0.003577 +v -0.022858 -0.054544 0.011030 +v 0.021858 0.048014 -0.012950 +v -0.016866 -0.038709 0.018991 +v 0.005781 0.003101 0.024930 +v -0.022961 0.022576 -0.011084 +v 0.013532 -0.031896 0.021525 +v -0.003082 0.015616 0.025467 +v 0.003823 0.061938 0.022211 +v -0.009399 -0.045142 -0.023967 +v 0.025169 0.052482 0.003918 +v -0.004722 0.077390 0.008326 +v -0.017813 -0.010327 -0.018322 +v 0.005131 0.064069 0.007008 +v 0.006495 0.064457 0.001507 +v 0.022028 0.059823 0.012288 +v 0.010317 -0.054365 0.023157 +v -0.000637 0.072561 0.009521 +v 0.011043 0.069218 -0.003167 +v 0.021659 -0.024706 -0.013639 +v 0.025377 -0.048517 0.002870 +v 0.017763 -0.066331 0.017991 +v -0.024494 -0.033843 0.006891 +v 0.025430 0.002611 -0.001750 +v -0.012936 -0.072915 0.005176 +v -0.000241 -0.070300 -0.001792 +v 0.006897 -0.074208 0.018518 +v -0.010434 0.014029 -0.023163 +v 0.021756 -0.040195 0.013309 +v -0.024344 0.043641 -0.007500 +v -0.001940 0.081483 -0.009923 +v -0.019147 -0.021811 -0.016836 +v 0.002683 0.077342 -0.009093 +v -0.025100 0.052030 -0.004515 +v -0.024485 0.023826 0.007262 +v 0.024303 -0.031063 -0.007649 +v -0.011624 -0.068128 -0.022915 +v -0.011975 0.025740 -0.022331 +v 0.005542 0.068950 -0.010180 +v 0.015386 -0.026356 0.020274 +v 0.001221 0.010209 0.025502 +v -0.011448 -0.008725 0.022942 +v -0.022279 -0.009481 -0.012585 +v 0.001513 -0.073111 -0.015908 +v -0.014114 0.063145 0.012106 +v 0.006303 0.065035 -0.005341 +v 0.022585 -0.037537 -0.012073 +v 0.020070 -0.073952 -0.012676 +v 0.017155 -0.044424 0.018690 +v -0.022456 0.010877 -0.012139 +v -0.022528 -0.000506 0.012105 +v 0.024017 -0.058278 0.008194 +v 0.011464 0.050282 -0.022678 +v -0.016502 -0.054481 -0.019572 +v 0.010537 -0.022937 0.023153 +v 0.015750 -0.020120 0.020004 +v 0.000674 0.029290 0.025604 +v -0.025457 0.007209 0.000765 +v 0.016600 -0.073389 0.000757 +v 0.008704 -0.018855 0.023921 +v 0.006217 0.073579 0.007290 +v 0.008350 -0.050175 -0.024362 +v -0.012191 0.005854 -0.022331 +v -0.012395 0.011914 0.022493 +v -0.014178 -0.040749 -0.021276 +v -0.022095 0.019894 0.012790 +v 0.020422 0.026536 -0.015355 +v -0.001798 -0.059237 0.025312 +v -0.017064 0.023357 -0.018849 +v 0.017918 -0.038321 0.018021 +v -0.000761 -0.066003 0.025407 +v -0.009939 0.018246 0.023677 +v 0.011083 0.064848 0.007302 +v 0.020022 -0.060705 0.015604 +v -0.006560 0.072934 0.006929 +v -0.021106 -0.008032 0.014349 +v 0.024520 0.033882 0.007064 +v 0.008942 0.076656 0.003384 +v -0.005613 0.037180 -0.024745 +v 0.010638 0.081311 0.000638 +v 0.019183 -0.074299 -0.008338 +v 0.025500 -0.012562 -0.000760 +v -0.008801 -0.072050 -0.002177 +v -0.021604 -0.051052 -0.013731 +v -0.023332 0.051185 -0.010048 +v -0.017768 -0.057757 0.018048 +v 0.021755 -0.074140 0.008296 +v 0.017983 0.013511 -0.018186 +v 0.012899 -0.074097 -0.014909 +v -0.025163 -0.000218 0.004474 +v -0.013434 0.034045 -0.021470 +v -0.024445 -0.049641 0.006984 +v 0.002703 0.069116 0.011485 +v 0.002890 -0.025179 0.025373 +v -0.000022 -0.043739 0.025468 +v 0.011146 0.057485 0.023057 +v -0.022946 0.039083 0.011195 +v -0.006546 -0.000685 0.024804 +v 0.011374 -0.007694 0.022782 +v 0.005479 0.063079 -0.017937 +v 0.001262 -0.067822 -0.025748 +v 0.001473 -0.006234 0.025480 +v 0.025329 0.024479 -0.003025 +v -0.008571 0.077584 0.004217 +v -0.005809 0.022024 -0.024736 +v -0.015146 0.004566 0.020733 +v 0.025372 0.010403 -0.002826 +v 0.020570 -0.015019 0.015039 +v -0.008393 0.051927 -0.023939 +v 0.000947 -0.050151 -0.025829 +v 0.022597 0.019828 -0.011904 +v -0.007227 0.064651 -0.004085 +v 0.000237 0.081078 0.010931 +v 0.023221 0.027397 -0.010431 +v -0.006500 0.081407 0.007468 +v 0.006052 0.071637 -0.006981 +v 0.007631 0.080992 0.007862 +v 0.003679 0.076367 0.008859 +v 0.015036 -0.049454 -0.020876 +v 0.023827 -0.020955 0.008981 +v 0.009560 -0.072552 -0.008723 +v 0.008782 0.062741 0.017778 +v -0.001748 -0.056001 -0.025739 +v -0.022089 -0.039491 0.012554 +v 0.024946 -0.068700 0.005200 +v -0.014150 0.052040 -0.021146 +v -0.022488 0.061678 0.004110 +v -0.007658 -0.032097 -0.024493 +v -0.007412 -0.025121 -0.024507 +v 0.025380 -0.067812 -0.002894 +v 0.019664 0.045534 0.016161 +v 0.017177 0.062009 -0.014056 +v -0.025544 0.044356 0.000574 +v -0.023135 -0.066050 -0.011029 +v -0.018383 0.002062 -0.017707 +v 0.023636 0.057393 0.009538 +v 0.010846 -0.025354 -0.023085 +v -0.014238 -0.024714 -0.021246 +v -0.024576 0.033114 0.006981 +v -0.000466 -0.072416 0.017087 +v 0.023104 -0.020713 -0.010949 +v -0.001476 0.036457 -0.025345 +v -0.024787 0.003332 0.006314 +v -0.021837 0.033031 0.013343 +v -0.009623 0.064311 0.011398 +o kp.001 +v -0.001000 -0.074000 0.001000 +v -0.001000 -0.072000 0.001000 +v -0.001000 -0.074000 -0.001000 +v -0.001000 -0.072000 -0.001000 +v 0.001000 -0.074000 0.001000 +v 0.001000 -0.072000 0.001000 +v 0.001000 -0.074000 -0.001000 +v 0.001000 -0.072000 -0.001000 +o kp.000 +v -0.001000 0.079000 0.001000 +v -0.001000 0.081000 0.001000 +v -0.001000 0.079000 -0.001000 +v -0.001000 0.081000 -0.001000 +v 0.001000 0.079000 0.001000 +v 0.001000 0.081000 0.001000 +v 0.001000 0.079000 -0.001000 +v 0.001000 0.081000 -0.001000 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_2.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_2.obj new file mode 100644 index 0000000000000000000000000000000000000000..7d8e1308e0bf2fd0824f0ed4904fc9326753bdc8 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/bottle_2.obj @@ -0,0 +1,1019 @@ +o mesh +v 0.030447 0.027907 -0.001519 +v -0.027237 -0.076211 0.011102 +v -0.016556 0.094251 0.002029 +v 0.026823 -0.042307 -0.025350 +v -0.028919 -0.005145 0.022305 +v -0.026859 0.038074 -0.025133 +v 0.015874 -0.044158 0.030444 +v -0.010956 0.046415 0.030260 +v -0.027102 -0.032759 -0.024623 +v 0.013427 0.066750 -0.027835 +v 0.004576 0.001026 -0.030166 +v -0.004599 -0.075565 -0.028608 +v 0.025862 0.068860 0.015361 +v 0.015521 0.001324 0.030407 +v 0.025802 -0.076993 0.002817 +v 0.029790 -0.010053 -0.003594 +v -0.022867 -0.043114 0.028212 +v -0.029681 0.001988 -0.013521 +v -0.030238 0.061034 0.002562 +v 0.002802 -0.075530 0.028429 +v -0.030311 0.027908 0.008927 +v 0.021868 0.038800 0.029356 +v 0.015689 0.092429 -0.006606 +v 0.005635 0.034902 -0.029586 +v -0.017607 0.068049 -0.024931 +v -0.003186 0.075413 0.022000 +v -0.029838 -0.062698 -0.015635 +v -0.010430 0.016831 0.029878 +v 0.029713 -0.038295 0.005115 +v -0.004375 -0.020341 0.029780 +v 0.001930 -0.028327 -0.030567 +v 0.024204 -0.072103 -0.025654 +v -0.030674 -0.027418 0.004143 +v 0.030333 0.055419 -0.008598 +v -0.001817 -0.074694 0.000124 +v 0.028901 0.009873 -0.022064 +v 0.027028 -0.021396 0.024993 +v -0.010988 -0.051084 -0.030633 +v -0.016112 0.015160 -0.030364 +v 0.024495 -0.015147 -0.027462 +v 0.025881 -0.067125 0.026085 +v -0.017107 -0.010110 -0.030476 +v -0.030518 -0.052737 0.006336 +v 0.029795 0.008059 0.012098 +v -0.004499 0.085964 -0.016412 +v 0.028330 0.036171 -0.023222 +v 0.008176 0.093892 0.015021 +v -0.017977 -0.065098 0.029616 +v 0.008822 0.058394 0.030555 +v 0.030306 -0.056965 -0.008704 +v -0.023600 0.064240 0.023033 +v 0.009489 -0.057676 -0.030222 +v 0.029961 0.046620 0.010032 +v -0.007017 0.051045 -0.029924 +v -0.003395 -0.050749 0.029668 +v 0.008872 0.022894 0.030553 +v -0.030119 0.045547 0.018550 +v -0.029923 0.022855 -0.012452 +v -0.020518 0.075988 -0.006501 +v -0.030229 0.006971 0.005828 +v 0.022464 0.073823 -0.008191 +v -0.024742 -0.023732 0.027050 +v -0.029834 0.042089 -0.004189 +v 0.030137 -0.027938 -0.012918 +v -0.002109 0.081615 0.003645 +v -0.024677 0.029008 0.027172 +v -0.004198 -0.001476 0.029888 +v 0.013667 0.017705 -0.029882 +v -0.020408 -0.076141 -0.006511 +v 0.029759 0.025934 0.017347 +v 0.029901 -0.057642 0.009906 +v -0.029701 -0.016584 -0.014879 +v -0.029981 -0.044240 -0.010159 +v -0.029525 0.055569 -0.016712 +v 0.012679 -0.075221 -0.011163 +v 0.017663 0.049268 -0.029464 +v -0.018053 0.077607 0.010952 +v -0.020428 -0.067943 -0.029872 +v -0.028275 0.012275 0.023496 +v 0.016324 0.080972 0.006541 +v 0.010884 -0.075336 0.013097 +v -0.009913 -0.075397 0.015220 +v 0.025250 0.055203 0.026376 +v 0.030093 0.010943 -0.005143 +v -0.030326 -0.010596 0.002476 +v -0.011086 0.033231 -0.030115 +v 0.011693 -0.014984 0.030219 +v 0.029707 -0.009819 0.013187 +v 0.004269 0.039471 0.030613 +v -0.001988 0.072654 -0.025441 +v -0.007662 0.090705 0.015847 +v -0.026335 -0.049399 -0.025860 +v 0.023868 0.015540 0.028118 +v 0.029020 -0.044787 0.021213 +v 0.010117 0.079671 -0.016601 +v -0.012672 -0.035329 -0.030684 +v 0.010595 -0.041578 -0.030224 +v 0.011323 -0.059283 0.030461 +v -0.009098 0.062084 0.030280 +v -0.029343 -0.057864 0.021408 +v 0.001102 -0.035700 0.029439 +v 0.012514 0.072817 0.022296 +v -0.030662 -0.038866 0.015602 +v -0.001571 0.020049 -0.029884 +v 0.009500 -0.013707 -0.030213 +v 0.026471 0.060832 -0.022458 +v 0.030351 -0.072097 -0.011699 +v 0.019569 -0.000782 -0.029522 +v 0.026966 -0.057322 -0.025218 +v -0.030487 -0.066026 -0.000605 +v -0.017017 -0.011201 0.029441 +v 0.029682 -0.023317 0.007087 +v 0.019876 -0.030075 -0.029534 +v -0.017721 0.003823 0.029371 +v 0.029992 -0.005502 -0.018175 +v -0.021578 0.050948 -0.029037 +v -0.002647 -0.074586 -0.014285 +v -0.024424 0.001973 -0.027539 +v 0.030488 0.022319 -0.014965 +v 0.010522 -0.075249 -0.028517 +v -0.013612 -0.032353 0.029288 +v 0.027884 -0.000344 0.023677 +v -0.008158 0.030808 0.030347 +v 0.030180 0.060016 0.005199 +v 0.013544 -0.029089 0.030303 +v 0.030506 0.040009 -0.008685 +v -0.030632 -0.018011 0.015764 +v -0.016719 -0.077285 -0.019910 +v 0.003981 0.009658 0.030071 +v 0.030026 -0.043299 -0.009860 +v -0.009925 0.001570 -0.030396 +v -0.026480 0.023359 -0.025580 +v -0.004507 -0.064383 0.030361 +v -0.004992 -0.015819 -0.030653 +v 0.005999 0.093962 -0.015496 +v 0.030015 -0.070313 0.013459 +v -0.019719 -0.023310 -0.029891 +v 0.004541 0.057407 -0.029805 +v 0.024949 0.023547 -0.027136 +v 0.029677 -0.032432 0.017273 +v -0.029981 -0.031298 -0.010989 +v -0.012691 0.094139 -0.010756 +v 0.016781 -0.076330 0.024505 +v -0.022378 0.051965 0.028346 +v 0.024111 -0.054571 0.027871 +v -0.020780 -0.075509 0.022891 +v -0.003453 -0.061313 -0.030560 +v -0.026170 0.067884 -0.015792 +v 0.029422 0.048774 -0.020874 +v -0.012868 0.076446 -0.017049 +v -0.030331 -0.041227 0.001828 +v -0.028858 0.011645 -0.021244 +v 0.004121 0.082221 0.014623 +v -0.030073 0.013192 -0.004800 +v -0.026794 0.069143 0.012263 +v 0.029690 0.038055 0.018750 +v -0.009766 -0.075199 0.028324 +v 0.022891 -0.010419 0.028737 +v 0.030301 -0.065158 0.000350 +v 0.023875 -0.035367 0.028140 +v 0.025162 0.072882 0.003970 +v 0.017615 0.033240 -0.029642 +v 0.007719 0.081530 -0.003337 +v -0.014492 -0.074701 0.004157 +v 0.015527 0.094323 0.005630 +v -0.029977 0.029971 -0.002819 +v -0.027789 -0.074426 -0.016119 +v -0.030273 0.056845 0.014773 +v -0.001239 -0.041855 -0.030361 +v -0.016211 -0.052785 0.029662 +v -0.030619 -0.064506 0.011037 +v 0.014393 0.048105 0.030618 +v -0.030180 0.039665 0.008459 +v 0.030098 0.017826 0.004355 +v 0.029828 -0.000154 0.003861 +v -0.013999 0.070708 0.024158 +v 0.021269 0.027194 0.029597 +v -0.009535 0.081386 -0.007010 +v -0.008222 0.062554 -0.030109 +v 0.009870 -0.074145 -0.000026 +v 0.030162 0.034992 0.007575 +v -0.028159 -0.008304 -0.022694 +v 0.018800 0.071637 -0.018858 +v -0.030494 0.017179 0.013003 +v 0.002461 0.068545 0.029217 +v -0.001109 0.052227 0.030660 +v -0.029847 0.036192 -0.013939 +v 0.018085 0.064268 0.027552 +v 0.003362 0.046038 -0.029662 +v -0.020126 0.039166 0.029356 +v 0.017876 -0.050147 -0.029978 +v 0.029916 -0.016657 -0.017011 +v 0.029818 -0.048639 0.000953 +v 0.029721 0.056846 0.015794 +v 0.028884 0.065950 -0.012374 +v -0.030284 0.034595 0.018206 +v -0.030158 -0.055281 -0.004315 +v -0.029922 -0.007809 -0.008429 +v -0.017434 0.083396 0.001755 +v -0.028567 0.068907 -0.004968 +v 0.018716 -0.063283 -0.029750 +v 0.006457 -0.004521 0.030055 +v -0.011735 -0.043001 0.029403 +v 0.029789 -0.029342 -0.001823 +v -0.020987 0.018632 0.028928 +v -0.020100 -0.057198 -0.030001 +v 0.030040 0.000603 -0.008082 +v -0.030364 -0.028317 0.018673 +v 0.021960 -0.077181 0.014947 +v 0.001187 -0.075480 0.017939 +v -0.028871 -0.068761 0.021735 +v 0.028248 -0.031404 -0.023180 +v -0.030222 0.050443 0.006427 +v -0.030349 -0.002676 0.010000 +v -0.030389 -0.018933 -0.004719 +v 0.030197 -0.050431 -0.017381 +v 0.021790 -0.076876 -0.016790 +v 0.030302 -0.063577 -0.017470 +v 0.020179 0.009477 -0.029347 +v -0.029960 0.055785 -0.006487 +v 0.005712 -0.045231 0.029856 +v -0.020664 -0.041641 -0.029764 +v -0.008974 0.080583 0.015254 +v 0.011248 -0.070227 0.030648 +v -0.018256 0.040567 -0.030024 +v -0.001711 0.022931 0.030351 +v 0.029389 0.015790 0.019578 +v 0.005016 0.012312 -0.030029 +v -0.029179 -0.047731 0.021579 +v 0.022708 -0.077210 -0.006733 +v -0.025045 0.059563 -0.024752 +v -0.030065 -0.000147 -0.001241 +v -0.030222 0.019995 0.002760 +v 0.029177 0.047862 0.020763 +v 0.029322 -0.058998 0.020548 +v -0.027424 -0.021953 -0.023634 +v 0.000589 -0.052152 -0.030272 +v -0.014404 -0.020826 0.029485 +v -0.025413 -0.033651 0.026523 +v -0.029217 -0.041417 -0.020295 +v -0.029819 0.046075 -0.013339 +v -0.005792 0.011117 -0.030281 +v 0.030335 0.044358 0.000189 +v -0.029683 -0.052295 -0.017026 +v 0.012931 0.013722 0.030392 +v 0.004470 -0.025328 0.029840 +v -0.026809 -0.014321 0.025118 +v 0.017896 0.074685 0.014295 +v -0.023312 0.073977 0.003500 +v 0.012555 0.034208 0.030698 +v -0.030374 0.003875 0.017308 +v -0.028029 -0.075817 -0.000360 +v -0.008187 -0.026638 -0.030736 +v 0.013657 -0.022588 -0.030221 +v 0.003823 -0.067801 -0.030576 +v -0.030040 0.024481 0.019435 +v -0.000424 -0.011373 0.029893 +v 0.002821 -0.076463 -0.022466 +v -0.009557 -0.074230 -0.007618 +v -0.001523 -0.006373 -0.030493 +v 0.019360 0.058669 -0.028588 +v -0.028221 0.047948 -0.022589 +v 0.017370 0.083468 -0.002618 +v -0.027185 -0.061013 -0.024877 +v -0.021294 0.031539 -0.029286 +v -0.014724 0.088565 0.009437 +v -0.011000 -0.068065 -0.030801 +v -0.006510 0.008220 0.029826 +v 0.000808 0.081549 -0.009771 +v 0.029938 0.066282 -0.001774 +v 0.008488 0.025983 -0.029789 +v -0.012021 0.023964 -0.030358 +v 0.029700 -0.014028 0.004882 +v 0.029808 -0.046192 0.012068 +v -0.002486 -0.074149 0.009576 +v 0.012794 0.041056 -0.029595 +v 0.030640 0.031704 -0.015541 +v 0.008338 0.073336 -0.022970 +v 0.029647 -0.000767 0.014469 +v -0.002627 0.029874 -0.029719 +v -0.005364 0.042111 -0.029678 +v 0.028806 -0.012977 0.021660 +v 0.019600 -0.019834 0.029973 +v 0.023456 0.042527 -0.027907 +v 0.004580 0.066482 -0.029491 +v -0.030206 -0.069481 -0.009014 +v -0.015815 0.057786 -0.029977 +v 0.030146 -0.037090 -0.016322 +v 0.016440 -0.075440 0.006074 +v 0.027113 0.032206 0.025059 +v 0.011887 0.086218 0.012238 +v 0.030151 0.026104 0.007700 +v -0.029214 0.030220 -0.020646 +v -0.022015 -0.003886 0.028500 +v 0.003266 -0.073870 -0.007753 +v 0.018248 -0.064767 0.030329 +v 0.022902 0.006787 0.028707 +v 0.029808 -0.021472 -0.005814 +v 0.000805 0.079612 -0.019467 +v -0.023499 -0.057631 0.028006 +v 0.014692 0.084818 -0.010881 +v -0.016586 0.026186 0.029782 +v 0.007586 0.081470 0.005865 +v 0.009720 -0.037233 0.030048 +v 0.029645 -0.021149 0.016651 +v 0.027695 -0.022716 -0.023878 +v 0.002633 -0.058563 0.030205 +v 0.025603 0.062967 0.022419 +v -0.026135 0.004205 0.025902 +v -0.023665 -0.015488 -0.028010 +v -0.017030 0.006514 -0.030209 +v 0.011287 -0.004424 -0.030044 +v -0.020021 0.071436 0.018007 +v 0.030352 0.013405 -0.014324 +v 0.026937 -0.001299 -0.025084 +v -0.026644 -0.070087 -0.024333 +v -0.030633 -0.019056 0.006140 +v 0.030350 0.019493 -0.004303 +v 0.002380 0.030472 0.030529 +v 0.012560 -0.077201 -0.020419 +v 0.011084 -0.033023 -0.030326 +v -0.017465 0.060892 0.028905 +v -0.003385 0.094258 -0.014749 +v -0.004261 0.039342 0.030561 +v 0.019580 -0.041391 -0.029761 +v -0.015682 -0.074899 -0.027979 +v -0.016162 0.088095 -0.005940 +v 0.023976 -0.044175 0.028018 +v 0.017481 0.056220 0.030079 +v 0.000662 0.090972 0.017485 +v -0.023532 0.011851 -0.028143 +v -0.029796 0.014459 -0.013368 +v -0.028101 0.054426 0.022508 +v -0.010577 0.081703 0.006969 +v -0.018855 -0.077182 0.014907 +v 0.027338 0.022430 0.024843 +v 0.030125 -0.072631 -0.003348 +v 0.030204 0.053847 -0.000412 +v -0.009148 -0.057204 0.029855 +v 0.004078 -0.020277 -0.030606 +v 0.005940 0.047793 0.030711 +v -0.008287 -0.008742 0.029747 +v 0.024790 0.052703 -0.026740 +v -0.027341 0.038926 0.024610 +v -0.013196 -0.017385 -0.030649 +v 0.008403 -0.077336 0.022645 +v 0.030395 0.047615 -0.011882 +v -0.008351 -0.076490 -0.021324 +v 0.003301 -0.066995 0.030555 +v 0.030030 -0.056844 0.000741 +v -0.029682 -0.025137 -0.016391 +v 0.020037 0.069787 0.021236 +v 0.016090 -0.052671 0.030514 +v -0.030659 -0.046104 0.011902 +v -0.001097 0.060683 0.030515 +v 0.025005 -0.074055 0.021949 +v -0.005545 0.070014 0.027563 +v -0.019852 0.073185 -0.014569 +v -0.020793 -0.032918 -0.029694 +v 0.029952 -0.035786 -0.006861 +v -0.030546 -0.008937 0.015350 +v -0.006041 -0.029533 0.029372 +v -0.003697 -0.042393 0.029380 +v 0.029325 0.006815 0.020031 +v 0.030226 0.002372 -0.016586 +v -0.010423 0.071638 -0.024747 +v 0.017001 0.077403 -0.012925 +v 0.029955 0.008351 0.002450 +v -0.030252 -0.034475 -0.003639 +v -0.030662 -0.034940 0.008625 +v -0.017750 -0.001451 -0.030290 +v 0.022465 0.046742 0.028861 +v 0.004827 -0.073931 0.006393 +v -0.014694 0.053445 0.029991 +v 0.011087 0.079179 0.016966 +v 0.030063 0.055834 -0.017305 +v 0.003741 0.086232 -0.016224 +v -0.009252 -0.007965 -0.030525 +v 0.013865 -0.007223 0.030309 +v 0.010057 0.066435 0.029402 +v 0.029308 0.017705 -0.021234 +v 0.019780 -0.008641 -0.029516 +v -0.012302 0.037471 0.030240 +v 0.011819 0.004003 -0.029986 +v 0.004625 0.074981 0.022125 +v -0.012212 -0.043134 -0.030597 +v 0.030474 -0.065021 -0.008378 +v 0.030506 0.039661 -0.016606 +v -0.029686 0.062748 -0.011118 +v 0.025242 -0.049759 -0.026900 +v 0.029193 0.027328 -0.021836 +v -0.012271 0.084995 -0.013317 +v -0.019746 0.023512 -0.029794 +v 0.030382 0.035563 -0.000389 +v 0.030004 0.019044 0.011996 +v -0.003764 -0.077130 0.023643 +v -0.028836 0.068655 0.004827 +v 0.029083 -0.071331 -0.019713 +v 0.006211 -0.075155 -0.015648 +v 0.030042 -0.010762 -0.012026 +v 0.016833 0.020953 0.030555 +v 0.003497 0.017310 0.030268 +v -0.028698 -0.000774 -0.021450 +v 0.030205 -0.071076 0.005198 +v 0.028855 0.067688 0.008420 +v -0.030434 -0.026563 -0.004187 +v 0.017758 -0.070841 -0.029650 +v 0.023546 -0.027265 0.028372 +v -0.021757 0.010227 0.028599 +v 0.011890 0.055475 -0.029613 +v 0.025210 0.014794 -0.026923 +v -0.030637 -0.055674 0.013332 +v -0.030094 -0.047157 -0.002886 +v 0.017524 0.025676 -0.029649 +v 0.026075 -0.064799 -0.026185 +v -0.030057 0.021920 -0.004543 +v -0.013126 -0.002944 0.029571 +v 0.008059 -0.052386 0.030235 +v -0.013184 -0.077218 0.021922 +v -0.028597 -0.039890 0.022770 +v 0.022581 -0.001357 0.028911 +v -0.011438 -0.060581 -0.030704 +v -0.023719 -0.070068 0.027111 +v 0.030521 0.027163 -0.008965 +v -0.003552 0.084794 0.018207 +v -0.022747 -0.076663 0.005148 +v 0.017455 -0.015715 -0.029884 +v 0.021662 -0.021883 -0.028905 +v -0.013187 0.046015 -0.030122 +v -0.029984 0.050378 -0.001376 +v -0.003705 -0.033156 -0.030611 +v -0.024779 -0.050187 0.027112 +v -0.030469 -0.059659 0.003728 +v -0.019124 -0.049875 -0.030318 +v 0.027105 -0.008677 -0.024739 +v 0.003485 0.002301 0.029997 +v 0.024070 -0.035801 -0.027681 +v -0.006341 0.076418 -0.020395 +v -0.026705 0.046217 0.025074 +v 0.029674 -0.030250 0.009456 +v 0.011137 -0.067617 -0.030254 +v -0.030408 0.009837 0.013065 +v -0.030215 -0.062225 -0.008172 +v -0.013882 0.075503 0.017100 +v 0.008705 -0.048586 -0.030193 +v 0.004229 -0.018076 0.029942 +v -0.030008 0.035948 0.001271 +v -0.029933 0.006118 -0.006340 +v 0.029611 -0.051910 0.019125 +v 0.021117 0.065210 -0.024582 +v 0.021161 0.077715 -0.000436 +v -0.020869 -0.077310 -0.013994 +v 0.024710 0.031301 -0.027141 +v -0.027376 -0.076113 -0.008786 +v -0.020046 -0.028859 0.028963 +v -0.030761 -0.024034 0.011342 +v -0.030287 -0.072455 0.005591 +v 0.020497 -0.071624 0.028487 +v 0.002987 -0.036030 -0.030417 +v -0.002138 0.004926 -0.030248 +v -0.026840 0.020648 0.025283 +v -0.003194 0.081551 -0.003454 +v -0.023506 -0.007843 -0.028157 +v 0.016206 -0.075211 -0.004468 +v -0.014453 0.010928 0.029538 +v -0.029682 -0.035057 -0.017054 +v 0.029700 -0.039349 0.014046 +v -0.010802 -0.067702 0.030165 +v -0.016915 -0.073353 0.028457 +v -0.002240 0.081758 0.011497 +v 0.002557 -0.074664 -0.029307 +v -0.008844 0.023720 0.030127 +v 0.010004 0.048347 -0.029573 +v 0.027412 0.041448 0.024472 +v -0.029227 0.019629 -0.020314 +v 0.002703 -0.012035 -0.030429 +v -0.029556 0.041689 -0.018781 +v 0.029657 -0.006836 0.005845 +v 0.016922 0.087757 0.003745 +v 0.024433 0.067548 -0.018871 +v 0.030020 0.053327 0.007100 +v 0.028086 -0.028553 0.023279 +v -0.018016 0.045766 0.029793 +v -0.024174 0.044664 -0.027652 +v -0.003636 0.057353 -0.029981 +v -0.011179 0.094313 0.011000 +v -0.016701 0.078621 -0.011653 +v -0.003662 -0.071244 0.030361 +v 0.029438 -0.067450 0.019718 +v -0.007434 -0.036594 0.029191 +v -0.003763 -0.069046 -0.030700 +v -0.029598 -0.005382 -0.016419 +v 0.030060 -0.064302 0.008183 +v 0.021429 -0.056378 -0.029183 +v -0.026840 -0.074403 0.018373 +v 0.027671 -0.075952 0.010321 +v 0.018999 -0.076099 -0.023674 +v 0.010261 0.091362 -0.010652 +v -0.002582 0.066426 -0.029724 +v -0.030002 0.043626 0.002476 +v -0.030223 0.012690 0.002074 +v -0.029045 -0.020071 0.022074 +v -0.029819 0.030898 -0.009654 +v -0.028032 0.061819 -0.018968 +v -0.026266 -0.063459 0.025839 +v 0.030026 -0.049148 -0.006397 +v -0.028292 0.062213 0.018552 +v -0.013089 -0.075412 -0.013299 +v -0.019750 -0.036374 0.029046 +v 0.029887 -0.043925 -0.019231 +v -0.021288 -0.016395 0.028761 +v -0.016562 0.081409 -0.005096 +v -0.009643 -0.016049 0.029655 +v 0.028019 -0.038095 0.023570 +v 0.017682 -0.037686 0.030371 +v 0.003194 -0.060344 -0.030446 +v -0.007241 0.055661 0.030474 +v -0.000264 0.045359 0.030620 +v 0.029950 0.040057 0.011901 +v 0.010470 -0.022482 0.030176 +v -0.030138 -0.022748 -0.010156 +v -0.011337 0.081460 -0.000043 +v 0.030261 -0.057053 -0.016217 +v -0.029904 0.017458 0.019606 +v -0.002045 -0.022789 -0.030747 +v -0.014123 -0.074671 -0.002861 +v 0.027685 0.070023 -0.006804 +v 0.024884 0.005459 -0.027125 +v -0.023354 0.058499 0.026211 +v 0.029562 -0.017966 0.010914 +v -0.009182 -0.074324 0.007979 +v 0.012554 0.040757 0.030694 +v -0.017702 0.032622 0.029834 +v -0.030463 -0.070762 0.012870 +v -0.022386 -0.074848 -0.023033 +v -0.015260 -0.028008 -0.030617 +v -0.000118 0.051875 -0.029742 +v 0.009797 0.061639 -0.029764 +v 0.029469 0.063371 0.013227 +v -0.030331 0.057730 0.008348 +v 0.029486 -0.006923 0.019445 +v 0.020287 0.076098 0.008136 +v -0.008971 0.090665 -0.014751 +v 0.012105 0.006810 0.030238 +v 0.029879 -0.062973 0.015091 +v -0.010225 -0.050379 0.029580 +v -0.029904 0.063516 0.011804 +v -0.028374 -0.055063 -0.022765 +v 0.015036 -0.077168 0.018384 +v -0.004182 0.015415 0.030027 +v -0.028688 -0.014516 -0.021255 +v 0.030374 0.060400 -0.004233 +v -0.029677 0.008416 -0.015439 +v 0.025877 -0.060754 0.026253 +v -0.005994 -0.055032 -0.030453 +v 0.029893 0.002519 -0.001917 +v 0.017067 0.093148 -0.000435 +v 0.019984 0.018056 -0.029374 +v 0.029820 -0.015128 -0.007429 +v 0.005945 -0.031619 0.029763 +v 0.030290 0.007837 -0.011290 +v 0.029779 -0.026515 -0.019249 +v 0.006127 0.087886 0.016631 +v -0.015069 0.094333 -0.004125 +v -0.003286 -0.073805 -0.006896 +v -0.026392 -0.043020 -0.025724 +v -0.027668 0.005806 -0.023691 +v 0.029726 -0.018707 -0.000130 +v -0.008969 -0.073873 0.000710 +v 0.030349 0.049571 -0.005055 +v -0.006193 -0.046990 -0.030381 +v 0.005814 0.020273 -0.029890 +v -0.010290 0.017556 -0.030298 +v -0.021600 0.069385 -0.019840 +v -0.028819 0.029829 0.022519 +v 0.023293 0.071375 -0.014024 +v -0.030028 -0.053719 -0.010392 +v 0.018704 0.079252 -0.007071 +v -0.030323 -0.063971 0.017951 +v -0.011067 0.039499 -0.030045 +v 0.009148 0.081920 -0.010540 +v -0.025724 0.070949 -0.010146 +v -0.024572 -0.026319 -0.027374 +v -0.030334 0.026232 0.002824 +v -0.030471 -0.011187 0.008682 +v 0.027090 0.011226 0.024984 +v 0.029856 -0.051138 0.008285 +v -0.022677 0.073150 0.009871 +v -0.030620 -0.022077 0.000644 +v -0.007673 0.080660 -0.015741 +v -0.001210 0.037498 -0.029593 +v -0.029771 0.036861 -0.007772 +v -0.030398 0.049190 0.013540 +v -0.019113 0.062566 -0.027825 +v 0.028858 0.042779 -0.022281 +v 0.002031 0.025160 -0.029758 +v 0.013371 0.092147 0.011360 +v 0.008928 0.029066 0.030679 +v -0.026800 0.016700 -0.025171 +v 0.006533 -0.010687 0.030189 +v 0.026799 -0.049623 0.025366 +v 0.029998 0.032331 0.013129 +v 0.030056 -0.020450 -0.012184 +v -0.030006 -0.037323 -0.009817 +v 0.004566 -0.005652 -0.030272 +v 0.004616 -0.043672 -0.030287 +v 0.030517 0.032836 -0.006650 +v 0.022151 -0.077135 0.007731 +v 0.019448 -0.031485 0.030063 +v 0.012699 0.081408 0.000738 +v 0.025791 -0.076740 -0.011980 +v -0.030354 0.033273 0.011810 +v 0.029799 -0.043511 -0.002331 +v -0.030110 0.005853 -0.000214 +v 0.025888 -0.015250 0.026567 +v -0.029787 -0.068608 -0.017069 +v -0.020787 0.078188 -0.000838 +v 0.017255 -0.012256 0.030318 +v -0.015904 -0.058844 0.029752 +v -0.013916 0.066097 0.028097 +v 0.007363 0.071496 0.026265 +v 0.015428 -0.056212 -0.030029 +v -0.011450 0.008968 -0.030415 +v -0.030116 -0.006456 -0.002543 +v -0.030090 0.063185 -0.003774 +v -0.026156 0.030174 -0.025994 +v 0.000039 0.079810 0.019430 +v 0.027082 -0.007448 0.024948 +v 0.015371 0.027766 0.030693 +v 0.012864 0.074229 -0.019098 +v -0.030199 -0.003414 0.003806 +v -0.024963 0.072967 -0.002402 +v -0.026101 0.052941 -0.025637 +v 0.018286 0.011043 0.030276 +v -0.024842 -0.008951 0.027021 +v -0.010782 0.085978 0.013397 +v 0.029820 -0.003731 -0.000931 +v -0.017259 -0.062915 -0.030530 +v 0.030186 0.040008 0.004347 +v 0.027357 -0.074984 0.016199 +v 0.019520 0.033398 0.030251 +v -0.000093 -0.029834 0.029470 +v 0.021179 -0.049212 0.029508 +v 0.029893 0.011874 0.007234 +v 0.004037 -0.073469 -0.000924 +v 0.025054 -0.027067 -0.026939 +v -0.010492 0.003817 0.029662 +v 0.014610 0.080002 0.012269 +v -0.030495 0.023669 0.013583 +v -0.008843 0.075636 0.020263 +v 0.017673 -0.058374 0.030400 +v 0.007462 -0.026226 -0.030458 +v -0.015099 0.020455 0.029675 +v -0.029139 -0.033607 0.021932 +v 0.028747 0.053700 0.021589 +v -0.029869 0.049781 -0.007254 +v 0.030449 0.018835 -0.010193 +v -0.030745 -0.032369 0.014397 +v -0.030167 -0.013080 -0.005797 +v 0.028639 -0.014000 -0.022103 +v -0.000717 0.014063 -0.030051 +v 0.012210 -0.075475 0.028234 +v 0.029818 0.051208 0.014217 +v 0.028922 0.062443 -0.017052 +v -0.030497 -0.001901 0.015793 +v -0.024563 0.067695 0.018422 +v 0.015392 -0.036945 -0.030121 +v 0.009706 0.001447 0.030129 +v -0.014016 0.052254 -0.030155 +v 0.029610 0.031375 0.019400 +v 0.006980 0.040898 -0.029528 +v -0.029904 -0.000963 -0.006987 +v 0.025452 0.072803 -0.001828 +v -0.005290 -0.001919 -0.030530 +v 0.011824 0.032881 -0.029716 +v 0.014262 -0.010354 -0.029986 +v -0.016162 -0.075582 0.010036 +v -0.030424 -0.047006 0.005526 +v -0.014971 0.088568 0.000982 +v -0.023111 -0.062869 -0.028528 +v 0.003079 0.081695 0.001110 +v -0.024513 -0.037827 -0.027399 +v 0.009165 0.086753 -0.013944 +v -0.030173 -0.052877 0.018662 +v -0.030239 0.016467 0.007302 +v 0.022489 0.021044 0.029040 +v -0.017012 -0.047097 0.029501 +v -0.021374 0.057167 -0.028463 +v -0.030303 -0.071376 -0.003201 +v 0.002616 -0.050596 0.029910 +v 0.003499 0.071494 -0.026654 +v 0.029778 -0.045299 0.005617 +v -0.027920 -0.028119 0.023859 +v 0.009423 -0.074500 -0.006508 +v 0.030144 -0.003004 -0.012528 +v -0.023081 0.065020 -0.023236 +v 0.013919 0.087099 -0.005518 +v -0.006400 -0.038188 -0.030537 +v 0.016055 -0.076625 -0.015943 +v 0.017887 -0.025268 0.030288 +v -0.012564 0.065990 -0.028767 +v -0.029605 -0.011184 -0.016687 +v -0.003037 -0.058133 0.030001 +v 0.000489 -0.004694 0.029972 +v 0.002890 0.074953 -0.021971 +v -0.020055 0.078342 0.005092 +v -0.016773 0.072362 -0.019687 +v 0.021370 0.059647 0.027601 +v -0.001885 0.004104 0.029987 +v 0.028431 0.004293 -0.022862 +v 0.000571 0.090822 -0.017120 +v 0.004234 0.054062 0.030637 +v -0.030413 0.022352 0.007932 +v -0.002916 -0.075897 -0.019950 +v 0.008809 -0.064321 0.030583 +v -0.029819 0.027361 -0.015827 +v -0.030404 0.042424 0.013347 +v -0.022635 0.018816 -0.028744 +v -0.005525 0.024032 -0.029922 +v 0.016878 0.069542 -0.023693 +v -0.019219 0.067576 0.024095 +v 0.018264 -0.075552 0.000734 +v 0.028176 0.055377 -0.022561 +v 0.029916 -0.004920 -0.007213 +v -0.030157 0.033096 0.006075 +v 0.021109 0.037559 -0.029047 +v 0.029836 0.045347 0.015467 +v -0.030108 -0.040033 -0.004075 +v -0.029479 0.049968 -0.017559 +v -0.025014 -0.055196 -0.027198 +v 0.014365 0.068621 0.026649 +v -0.030447 -0.044531 0.017233 +v -0.029934 -0.014259 0.019784 +v -0.029305 0.035756 -0.020401 +v -0.030340 0.004613 0.010836 +v -0.029159 -0.064518 -0.020817 +v 0.017772 0.004514 -0.029718 +v 0.004828 0.063708 0.030467 +v 0.029628 -0.026639 0.017216 +v -0.019680 -0.023123 0.029147 +v 0.030158 0.048285 0.004782 +v 0.029849 0.004734 0.006605 +v 0.001739 -0.041164 0.029559 +v -0.030502 -0.016587 0.000980 +v -0.030604 -0.040908 0.010098 +v -0.009720 -0.023708 0.029498 +v -0.005468 0.048891 0.030583 +v -0.028664 -0.026926 -0.021673 +v 0.029688 -0.035555 0.000363 +v -0.022787 0.036813 -0.028583 +v -0.029924 0.017908 -0.009108 +v 0.013955 0.061560 0.029922 +v 0.030045 0.065271 0.003654 +v -0.015253 -0.054738 -0.030650 +v 0.030256 -0.060557 -0.004575 +v -0.023977 0.035670 0.027660 +v 0.024000 0.072512 0.009942 +v -0.011582 -0.062179 0.029975 +v 0.013803 0.009093 -0.029901 +v 0.017782 0.042327 0.030471 +v -0.003571 0.094200 0.014939 +v -0.010431 -0.076278 -0.027448 +v -0.002114 0.033561 0.030458 +v 0.029619 -0.014704 0.015599 +v 0.030304 0.059991 -0.011545 +v -0.029244 -0.048040 -0.020381 +v -0.016129 0.083355 0.007029 +v -0.012481 -0.003618 -0.030506 +v 0.023403 -0.004917 -0.028000 +v -0.030474 -0.034018 0.001735 +v -0.003479 0.065509 0.030137 +v -0.030589 -0.066044 0.004789 +v -0.016603 0.034006 -0.030287 +v 0.028348 -0.037668 -0.023065 +v -0.029741 0.041162 -0.011127 +v 0.006089 0.079543 0.018931 +v 0.002691 0.007467 -0.030163 +v 0.030360 -0.060882 -0.012447 +v -0.029136 0.007241 0.021830 +v -0.030633 -0.023282 0.016792 +v -0.021279 -0.076074 -0.001213 +v 0.005318 0.052102 -0.029663 +v 0.030265 -0.050775 -0.011497 +v 0.006369 -0.075329 0.015981 +v 0.002164 -0.074665 0.012178 +v 0.008629 0.081947 0.011758 +v 0.029768 0.013586 0.014720 +v -0.013260 0.080449 0.012059 +v 0.030185 0.007692 -0.017103 +v -0.006634 0.036555 -0.029807 +v 0.029868 -0.053171 0.013957 +v 0.000286 0.061954 -0.030014 +v -0.001562 0.081841 -0.014521 +v -0.029781 -0.045991 -0.015174 +v 0.017465 0.043566 -0.029460 +v 0.028539 -0.075315 -0.007636 +v 0.008137 -0.077261 -0.024246 +v 0.029997 -0.011221 -0.017813 +v 0.029036 -0.066227 -0.021868 +v -0.021617 0.024865 0.028840 +v 0.010776 -0.074759 0.007848 +v -0.029656 -0.057532 -0.017671 +v -0.007579 -0.020413 -0.030711 +v 0.020637 -0.076660 0.020016 +v 0.026729 0.005237 0.025467 +v -0.018972 -0.016297 -0.030216 +v -0.030249 -0.051587 -0.000080 +v -0.013785 0.094087 0.006464 +v 0.030258 0.031310 0.002651 +v 0.018784 -0.005468 0.030120 +v -0.029845 0.039487 0.019988 +v 0.007732 0.013289 0.030209 +v 0.012554 0.082064 -0.005639 +v 0.028446 -0.050970 -0.022965 +v 0.030023 0.005663 -0.006071 +v 0.008958 0.069395 -0.027449 +v -0.030520 0.029923 0.015921 +v 0.030340 -0.061250 0.003980 +v 0.022239 -0.067044 -0.028874 +v 0.001905 -0.076633 0.022951 +v 0.009951 0.014082 -0.029973 +v -0.013189 -0.037525 0.029362 +v 0.003977 0.024618 0.030549 +v -0.028767 0.001296 0.022506 +v 0.030143 -0.033772 -0.012339 +v 0.030311 0.050752 -0.016166 +v -0.029762 0.066900 0.000040 +v 0.017269 -0.076390 0.012909 +v -0.005753 0.081756 -0.010523 +v 0.023378 0.047847 -0.027794 +v 0.013234 0.089186 0.007133 +v -0.000842 0.072653 0.025672 +v -0.001139 0.010269 0.030035 +v -0.001251 -0.024812 0.029628 +v 0.018744 -0.076345 -0.009908 +v -0.030235 0.052406 0.017558 +v 0.028836 -0.061046 -0.022203 +v 0.001627 0.084611 0.018496 +v -0.030194 0.055973 0.003520 +v 0.011454 -0.052934 -0.030171 +v -0.007838 0.028608 -0.029955 +v -0.029830 0.052720 -0.011450 +v 0.030405 -0.066812 -0.013500 +v -0.029844 -0.012294 -0.011696 +v 0.004747 0.082081 -0.013148 +v -0.002647 0.027962 0.030386 +v 0.029687 -0.001158 0.008876 +v 0.004016 0.030058 -0.029642 +v -0.004340 -0.073634 0.004848 +v -0.029266 -0.020043 -0.019275 +v -0.027801 -0.052808 0.023951 +v 0.030344 0.045130 -0.017444 +v 0.010561 -0.043727 0.030142 +v -0.017066 -0.045126 -0.030628 +v -0.029807 -0.039909 -0.015480 +v -0.000336 -0.000819 -0.030310 +v 0.013678 -0.062807 -0.030129 +v -0.030610 -0.015529 0.011295 +v -0.002786 -0.011267 -0.030576 +v 0.029786 0.020205 0.017149 +v 0.029464 -0.000801 -0.020446 +v 0.008974 -0.019048 -0.030385 +v 0.030392 0.040930 -0.003521 +v -0.030146 0.001633 0.003987 +v -0.007319 -0.076320 0.020151 +v 0.029765 -0.024386 -0.000861 +v -0.022664 0.044483 0.028308 +v 0.027581 -0.055924 0.024469 +v 0.027370 -0.074910 -0.016599 +v -0.025183 0.014525 0.026784 +v -0.029844 0.009938 -0.010636 +v -0.013904 -0.023156 -0.030631 +v 0.030302 0.023050 -0.000193 +v -0.018336 -0.041194 0.029338 +v 0.025480 -0.077167 -0.002539 +v -0.013554 0.089105 -0.010722 +v 0.029696 -0.027054 0.003725 +v 0.018558 0.016062 0.030278 +v -0.025844 -0.002665 -0.026223 +v -0.026479 -0.045459 0.025637 +v 0.013120 -0.046203 -0.030169 +v 0.028681 0.027498 0.022444 +v 0.024887 -0.074389 -0.021245 +v 0.026951 0.049406 0.024978 +v 0.029734 -0.008989 0.001299 +v -0.030597 -0.058845 0.008665 +v 0.007321 -0.063169 -0.030382 +v -0.015333 0.084141 -0.009472 +v 0.015373 0.062303 -0.028971 +v 0.014952 0.088394 -0.000786 +v -0.025408 -0.039134 0.026629 +v 0.030133 0.064391 -0.007184 +v 0.006634 -0.072065 0.030523 +v 0.028771 0.061559 0.017795 +v -0.024436 -0.020611 -0.027361 +v -0.008235 0.072575 0.024117 +v 0.021076 0.051470 0.029378 +v 0.023336 -0.045415 -0.028328 +v 0.015137 -0.075784 -0.026760 +v -0.016711 0.029056 -0.030309 +v -0.002954 0.046430 -0.029704 +v 0.030098 -0.047124 0.016916 +v -0.021817 0.007050 -0.029093 +v -0.000990 -0.016283 0.029784 +v -0.022421 -0.077325 0.011036 +v -0.006791 -0.046247 0.029446 +v 0.014492 0.074627 0.017877 +v -0.028773 -0.010331 0.022548 +v 0.007321 -0.071278 -0.030374 +v 0.005596 0.078491 -0.019843 +v 0.003179 0.081506 0.008084 +v -0.028597 0.053630 -0.021150 +v 0.013555 0.053293 0.030653 +v -0.005213 -0.074801 0.013862 +v -0.014542 -0.075009 -0.008619 +v -0.030343 0.011907 0.017523 +v -0.001266 -0.077140 -0.025097 +v 0.029754 -0.021667 -0.018503 +v -0.006759 0.070070 -0.027604 +v 0.012975 -0.028513 -0.030246 +v -0.009016 -0.072524 -0.030497 +v 0.015917 0.085078 0.009164 +v -0.005766 -0.013080 0.029887 +v -0.013356 -0.077088 -0.023617 +v 0.028198 0.036773 0.023286 +v -0.007651 0.035827 0.030392 +v 0.020511 0.053929 -0.028834 +v -0.015263 -0.025631 0.029367 +v -0.018481 0.013775 0.029297 +v -0.013420 0.058388 0.029989 +v 0.000183 -0.046382 0.029608 +v -0.030728 -0.030066 0.008586 +v -0.016204 -0.070269 -0.030583 +v -0.030589 -0.060505 0.013974 +v 0.025359 0.027549 0.026972 +v 0.016135 -0.004824 -0.029890 +v -0.021976 -0.062495 0.028661 +v 0.029502 -0.002067 0.019244 +v 0.023582 0.058995 -0.026214 +v -0.009745 -0.012789 -0.030587 +v -0.023454 0.026811 -0.028207 +v 0.027982 0.021573 -0.023916 +v -0.030645 -0.050866 0.014283 +v -0.009068 -0.075531 -0.016633 +v 0.029965 -0.053333 -0.002587 +v 0.002544 -0.074340 -0.012610 +v 0.015698 -0.072566 0.029868 +v 0.027758 0.016448 0.024071 +v 0.017787 0.080521 0.001568 +v 0.007417 -0.037932 -0.030347 +v -0.025900 -0.002258 0.026159 +v -0.022229 0.000926 0.028429 +v -0.002721 0.088712 0.014906 +v -0.022174 -0.072118 -0.026993 +v 0.023003 -0.060867 -0.028494 +v 0.021802 0.066004 0.023618 +v -0.016067 0.020496 -0.030388 +v -0.025334 -0.018995 0.026621 +v 0.030115 -0.031008 -0.017618 +v -0.013151 0.029510 0.030083 +v -0.030092 0.058242 -0.001324 +v 0.029934 -0.028100 -0.008138 +v -0.022626 -0.046979 -0.028814 +v 0.010561 0.021671 -0.029907 +v 0.029850 0.032772 -0.020224 +v -0.029067 0.049001 0.021682 +v -0.026638 -0.073347 -0.020630 +v 0.005220 -0.053322 -0.030247 +v 0.030381 -0.067891 -0.003875 +v -0.009252 0.066683 0.028923 +v -0.029397 0.024353 -0.019708 +v -0.009209 0.055266 -0.030036 +v -0.025594 -0.072161 0.023278 +v 0.029451 -0.055124 -0.020890 +v 0.000481 -0.064427 -0.030552 +v 0.021599 -0.061562 0.029317 +v -0.023786 -0.076345 -0.017793 +v 0.014091 -0.019431 0.030339 +v 0.013591 -0.065588 0.030609 +v 0.000205 0.042018 -0.029625 +v 0.026202 0.009874 -0.026028 +v -0.014371 -0.015786 0.029581 +v 0.003241 0.093850 0.014758 +v 0.000699 -0.073450 0.004135 +v -0.030039 -0.017498 -0.009208 +v 0.029679 -0.026269 0.012000 +v -0.029760 -0.003134 -0.012271 +v -0.029822 0.058082 -0.011820 +v -0.030262 0.046133 0.009949 +v -0.017888 0.046385 -0.030066 +v -0.030325 -0.059359 -0.001959 +v -0.003531 -0.033955 0.029250 +v -0.030226 0.011248 0.007801 +v 0.008202 0.017972 0.030380 +v 0.000926 -0.016779 -0.030635 +v 0.029730 -0.034584 0.011289 +v -0.002889 -0.075446 0.028389 +v 0.025236 0.036521 -0.026747 +v -0.030546 -0.030065 -0.000810 +v 0.019844 0.003430 0.029926 +o kp.000 +v -0.001000 0.093000 0.001000 +v -0.001000 0.095000 0.001000 +v -0.001000 0.093000 -0.001000 +v -0.001000 0.095000 -0.001000 +v 0.001000 0.093000 0.001000 +v 0.001000 0.095000 0.001000 +v 0.001000 0.093000 -0.001000 +v 0.001000 0.095000 -0.001000 +o kp.001 +v -0.001000 -0.079000 0.001000 +v -0.001000 -0.077000 0.001000 +v -0.001000 -0.079000 -0.001000 +v -0.001000 -0.077000 -0.001000 +v 0.001000 -0.079000 0.001000 +v 0.001000 -0.077000 0.001000 +v 0.001000 -0.079000 -0.001000 +v 0.001000 -0.077000 -0.001000 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/cup_0.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/cup_0.obj new file mode 100644 index 0000000000000000000000000000000000000000..9e97af38e8de01c292082bd7bddd158dd2856b00 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/cup_0.obj @@ -0,0 +1,1019 @@ +o kp.000 +v -0.000500 -0.000500 0.031500 +v -0.000500 0.000500 0.031500 +v -0.000500 0.000500 0.030500 +v -0.000500 -0.000500 0.030500 +v 0.000500 0.000500 0.030500 +v 0.000500 -0.000500 0.030500 +v 0.000500 0.000500 0.031500 +v 0.000500 -0.000500 0.031500 +o kp.001 +v -0.000500 -0.000500 -0.037500 +v -0.000500 0.000500 -0.037500 +v -0.000500 0.000500 -0.038500 +v -0.000500 -0.000500 -0.038500 +v 0.000500 0.000500 -0.038500 +v 0.000500 -0.000500 -0.038500 +v 0.000500 0.000500 -0.037500 +v 0.000500 -0.000500 -0.037500 +o mesh +v -0.012241 0.033058 -0.002171 +v 0.014661 -0.041211 0.031503 +v 0.008073 -0.025743 -0.038730 +v 0.040247 0.017545 0.031237 +v -0.041940 -0.012439 0.031375 +v 0.030777 0.011786 -0.017343 +v -0.032148 -0.008272 -0.016790 +v 0.008107 0.042809 0.031914 +v -0.033308 0.027503 0.031976 +v -0.005304 0.014526 -0.037080 +v -0.005671 -0.035844 -0.001916 +v 0.035352 -0.015973 0.010048 +v 0.000168 -0.000580 -0.003653 +v -0.019896 -0.039213 0.031533 +v 0.022389 0.030617 0.006165 +v -0.035694 0.012200 0.005604 +v 0.027608 -0.017774 -0.017952 +v -0.030162 -0.024004 0.008036 +v 0.010219 0.030912 -0.019731 +v -0.018991 -0.018867 -0.038775 +v 0.019826 -0.001582 -0.037879 +v -0.026161 0.018893 -0.020841 +v 0.037298 0.009135 0.007890 +v 0.017973 -0.032966 0.005091 +v 0.043266 -0.006940 0.031499 +v -0.014023 0.038579 0.022224 +v -0.026685 0.003531 -0.038695 +v 0.033162 -0.027553 0.031857 +v -0.019168 -0.026851 -0.017531 +v 0.017683 0.020715 -0.038499 +v 0.010221 -0.031645 -0.016172 +v -0.041142 0.008344 0.026400 +v 0.022103 -0.002150 -0.003706 +v 0.026319 0.033077 0.027214 +v -0.002198 -0.039815 0.018503 +v -0.000669 -0.005686 -0.035714 +v 0.004176 0.038712 0.011572 +v -0.020374 0.004031 -0.005954 +v -0.009445 0.030261 -0.023929 +v 0.012507 0.015235 -0.003693 +v -0.037839 -0.006667 0.011989 +v -0.026846 0.028302 0.012324 +v 0.010625 -0.016479 -0.004362 +v -0.013602 -0.012744 -0.006434 +v -0.032153 -0.026917 0.027631 +v -0.004033 -0.030810 -0.026848 +v -0.017160 -0.035347 0.011677 +v -0.026490 0.023720 -0.004534 +v -0.009144 0.016692 -0.004974 +v 0.021901 -0.017509 -0.033629 +v 0.004471 0.035278 -0.004854 +v 0.030903 -0.003389 -0.025766 +v 0.023481 0.025138 -0.010579 +v 0.032667 0.023110 0.015871 +v 0.003863 0.027372 -0.033922 +v 0.027557 -0.021905 -0.002502 +v 0.027744 -0.028094 0.017044 +v -0.035887 -0.001751 -0.002769 +v -0.020434 0.018365 -0.035834 +v -0.028010 -0.020172 -0.006894 +v 0.027443 0.011035 -0.032157 +v 0.040324 0.004502 0.021862 +v -0.031150 0.004367 -0.024309 +v -0.028237 -0.009419 -0.031998 +v 0.007081 0.006761 -0.036141 +v -0.032715 0.010996 -0.009441 +v 0.036496 -0.004837 0.000712 +v -0.002569 -0.022243 -0.005399 +v -0.018763 -0.030205 -0.002188 +v -0.006239 -0.043115 0.031735 +v 0.031433 0.015794 -0.003470 +v -0.015347 -0.004760 -0.037090 +v -0.005071 -0.020385 -0.038183 +v 0.011611 -0.037786 0.017241 +v 0.022358 0.021989 -0.025099 +v 0.014820 0.037955 0.020739 +v -0.034710 0.019043 0.018920 +v 0.033956 -0.001174 -0.012340 +v -0.005772 0.042744 0.032122 +v -0.022777 0.036095 0.032141 +v 0.037377 -0.016533 0.023289 +v -0.018734 0.027873 -0.014224 +v 0.005407 -0.036566 0.005454 +v -0.036249 -0.017321 0.019863 +v 0.015133 -0.026832 -0.027763 +v -0.009403 0.037362 0.010338 +v 0.010523 -0.011699 -0.037033 +v -0.007615 -0.032804 -0.014099 +v 0.002445 0.022679 -0.003944 +v 0.018104 -0.029366 -0.006860 +v -0.025888 -0.018412 -0.023807 +v -0.033838 -0.013073 0.001808 +v 0.039390 -0.005016 0.014108 +v -0.004412 0.033618 -0.013009 +v -0.007828 0.026278 -0.036972 +v 0.023897 -0.034470 0.027979 +v 0.031721 -0.011982 -0.007730 +v -0.024212 -0.007141 -0.007080 +v -0.041470 -0.003768 0.023332 +v -0.039495 0.004581 0.015166 +v -0.026363 -0.031205 0.018401 +v -0.014228 0.006818 -0.037037 +v 0.000120 0.040397 0.022312 +v 0.015348 0.031472 -0.003873 +v -0.015620 -0.025883 -0.030413 +v 0.005430 -0.034306 -0.005679 +v -0.013013 -0.039200 0.021792 +v -0.039173 0.017718 0.031996 +v -0.026333 0.030652 0.023167 +v -0.018527 0.024805 -0.027067 +v 0.011282 -0.004284 -0.003558 +v 0.034046 0.026625 0.031880 +v 0.029536 0.022340 0.005152 +v 0.004142 -0.042193 0.026999 +v 0.018435 0.039444 0.031988 +v 0.018456 0.009711 -0.038100 +v 0.035663 0.005893 -0.002548 +v 0.007239 0.017320 -0.037649 +v -0.000065 0.011343 -0.003539 +v -0.020819 0.030954 0.003746 +v -0.027559 0.011422 -0.031627 +v 0.042848 0.007266 0.031918 +v 0.013008 0.035556 0.006669 +v 0.038022 0.015544 0.020964 +v 0.024675 0.030817 0.017044 +v 0.021207 -0.013613 -0.003720 +v 0.013893 0.026750 -0.030773 +v 0.020749 -0.025854 -0.016378 +v 0.020874 0.008241 -0.003991 +v -0.002178 -0.011832 -0.004741 +v -0.011345 -0.000986 -0.004956 +v -0.021110 0.014341 -0.006154 +v 0.026416 -0.026293 0.006773 +v -0.006010 -0.037475 0.009271 +v -0.003829 0.004500 -0.035972 +v 0.026347 -0.008428 -0.033889 +v -0.031275 0.021222 0.006680 +v -0.012528 -0.023054 -0.006295 +v 0.005537 -0.029872 -0.029697 +v -0.018291 0.033781 0.013277 +v 0.000451 0.031415 -0.024474 +v -0.002267 0.036374 0.003516 +v 0.021817 0.017876 -0.004375 +v -0.043371 0.000709 0.031899 +v -0.034095 0.000949 -0.011833 +v 0.020678 -0.034686 0.017442 +v -0.036891 0.002212 0.005772 +v 0.001324 -0.032556 -0.019147 +v -0.033713 -0.009624 -0.007358 +v -0.009489 -0.012257 -0.036970 +v 0.027921 0.001038 -0.033412 +v -0.027589 -0.033971 0.031740 +v -0.012947 0.025185 -0.007058 +v -0.038639 -0.021124 0.031351 +v 0.028018 -0.013474 -0.026309 +v 0.010739 -0.001973 -0.036216 +v 0.038506 -0.019755 0.031876 +v 0.009717 -0.025988 -0.004957 +v 0.033416 -0.013718 0.001308 +v 0.009563 0.004683 -0.003226 +v -0.035688 -0.016038 0.010840 +v -0.014436 0.039612 0.031249 +v -0.031924 0.016908 -0.002021 +v 0.031524 -0.009754 -0.016681 +v -0.023210 -0.029754 0.008070 +v 0.040866 -0.007235 0.022631 +v -0.028594 0.018396 -0.012245 +v 0.015849 0.030054 -0.012919 +v 0.026603 0.019603 -0.017148 +v 0.002172 -0.014570 -0.036825 +v 0.033495 -0.024428 0.022701 +v 0.015333 -0.020760 -0.038765 +v -0.030525 0.011479 -0.019010 +v -0.004451 0.028608 -0.005784 +v 0.032027 0.003602 -0.020592 +v -0.000887 -0.027451 -0.035136 +v -0.031117 -0.004306 -0.025167 +v 0.024143 0.026250 -0.001169 +v -0.012687 -0.034417 0.003002 +v -0.022875 -0.010653 -0.038701 +v -0.034741 0.006737 -0.001663 +v -0.011061 -0.030120 -0.021891 +v -0.028837 -0.017142 -0.014865 +v -0.022048 -0.025820 -0.009306 +v -0.026118 -0.026241 0.000873 +v 0.023133 -0.021462 -0.024170 +v -0.020813 -0.035484 0.023955 +v 0.004899 0.033384 -0.013587 +v -0.032455 -0.024694 0.018112 +v 0.010805 0.023777 -0.004061 +v -0.015426 -0.030968 -0.009959 +v 0.034682 0.016302 0.011373 +v 0.019744 -0.011107 -0.038587 +v -0.005982 0.005440 -0.004053 +v 0.010495 0.025108 -0.038464 +v -0.022575 0.010833 -0.038621 +v 0.038308 0.000039 0.007608 +v -0.020136 0.029334 -0.004368 +v -0.001852 -0.031334 -0.008312 +v -0.000845 0.022121 -0.038427 +v 0.027931 0.003747 -0.004487 +v 0.023298 0.018161 -0.032293 +v 0.018860 -0.021407 -0.004628 +v -0.012696 -0.024078 -0.038270 +v 0.033753 0.007096 -0.010411 +v -0.037104 0.013079 0.013614 +v 0.017149 -0.037403 0.024418 +v 0.030053 -0.004084 -0.005806 +v -0.023377 -0.018568 -0.031920 +v -0.029840 0.001010 -0.031624 +v 0.034666 0.023066 0.023764 +v 0.004208 -0.038577 0.013666 +v -0.011724 0.019293 -0.038489 +v 0.017964 0.035074 0.013070 +v 0.027660 0.015117 -0.024033 +v 0.026312 -0.021860 -0.011118 +v -0.006792 0.038953 0.018510 +v 0.011563 -0.034794 0.000643 +v -0.012147 0.031862 -0.011907 +v -0.032435 0.024517 0.024269 +v 0.017735 0.026909 -0.020921 +v -0.020020 0.021980 -0.008735 +v -0.020442 -0.016535 -0.007317 +v -0.027970 0.002270 -0.006827 +v 0.032269 -0.022081 0.014840 +v -0.039555 -0.010278 0.019032 +v 0.026021 0.007058 -0.038721 +v -0.007798 -0.002186 -0.035909 +v 0.022755 -0.027618 -0.000564 +v 0.006152 0.036001 0.003194 +v 0.007644 0.040091 0.023897 +v -0.036289 -0.006248 0.004472 +v -0.008589 -0.027896 -0.032768 +v 0.038007 0.009866 0.015837 +v 0.042351 -0.000896 0.026812 +v -0.026880 -0.004227 -0.038343 +v -0.037990 0.015074 0.024984 +v -0.013126 0.007663 -0.005016 +v -0.030841 -0.020375 0.000896 +v 0.011788 -0.035945 0.009379 +v 0.027343 0.018695 -0.009340 +v 0.031825 -0.020391 0.005164 +v -0.012980 0.026997 -0.031515 +v 0.005970 -0.010710 -0.004082 +v 0.001334 0.011361 -0.036509 +v -0.024368 0.018768 -0.027980 +v -0.029534 -0.012086 -0.022889 +v 0.011207 0.037865 0.013879 +v -0.020817 -0.023614 -0.024940 +v 0.027724 0.026546 0.011650 +v -0.021076 0.034736 0.020001 +v 0.038157 -0.012895 0.016964 +v -0.008901 -0.029503 -0.006944 +v -0.002551 0.029823 -0.031362 +v -0.005925 -0.040866 0.024702 +v 0.033724 0.016517 0.003851 +v -0.026724 0.025958 0.003544 +v 0.037552 -0.007378 0.007490 +v 0.029919 0.008441 -0.025749 +v 0.038972 0.002159 0.014670 +v -0.015663 0.028268 -0.020726 +v 0.029415 0.028891 0.022076 +v -0.013230 -0.041802 0.030882 +v 0.017266 0.024829 -0.006944 +v -0.009106 -0.038904 0.015553 +v 0.009467 0.031176 -0.008572 +v 0.023256 -0.031111 0.010934 +v -0.005580 0.035256 -0.003545 +v -0.019413 0.002020 -0.037763 +v 0.040821 -0.013260 0.029447 +v 0.001280 0.042785 0.030093 +v 0.029227 -0.029230 0.025635 +v 0.015111 0.003591 -0.036942 +v 0.020715 0.036088 0.024079 +v -0.007377 0.041149 0.025514 +v -0.015020 0.034497 0.005359 +v -0.024415 -0.022276 -0.017315 +v 0.003189 -0.033853 -0.012570 +v 0.010753 -0.029912 -0.023329 +v -0.027749 0.031487 0.030638 +v 0.026691 -0.003487 -0.038751 +v -0.027382 -0.013477 -0.008591 +v 0.010572 -0.040618 0.024946 +v 0.022380 0.015508 -0.038616 +v 0.039737 0.012296 0.026771 +v 0.003332 0.001030 -0.035693 +v 0.011498 -0.031821 -0.008083 +v -0.001216 -0.036810 0.003719 +v 0.011582 0.011803 -0.037203 +v -0.026108 0.009713 -0.006680 +v -0.024281 0.022946 -0.014938 +v -0.031464 0.022144 0.013788 +v 0.012718 -0.024760 -0.033792 +v 0.007822 0.030076 -0.026042 +v -0.035983 -0.022071 0.024787 +v 0.027046 0.010617 -0.005561 +v -0.016184 -0.012452 -0.038044 +v -0.029656 -0.003845 -0.009405 +v 0.007526 -0.018541 -0.037936 +v -0.039021 -0.013606 0.025405 +v 0.031694 0.013526 -0.010909 +v -0.019330 -0.002605 -0.006343 +v 0.002487 -0.017862 -0.005024 +v -0.032675 0.001633 -0.018317 +v 0.026408 -0.009318 -0.003878 +v 0.014686 -0.011207 -0.004081 +v -0.027321 -0.032185 0.025375 +v -0.002279 0.039058 0.012821 +v -0.038345 0.010846 0.019960 +v 0.026466 -0.016387 -0.006522 +v -0.039302 -0.002734 0.017017 +v 0.013398 0.039432 0.027808 +v -0.017829 -0.036597 0.018222 +v -0.028593 -0.027370 0.013409 +v -0.043339 -0.005772 0.031207 +v 0.005788 -0.006530 -0.035969 +v -0.029698 0.027213 0.018775 +v 0.035336 -0.000231 -0.006059 +v -0.029291 0.010883 -0.025343 +v 0.018909 -0.022960 -0.031847 +v -0.012118 -0.033895 -0.003412 +v 0.016470 -0.029561 -0.013268 +v -0.015430 0.014025 -0.038089 +v 0.029010 -0.032492 0.031749 +v -0.031485 -0.015572 -0.004002 +v -0.041114 0.002507 0.021999 +v 0.019198 0.023135 -0.030953 +v -0.019812 0.036766 0.025950 +v 0.005854 0.039104 0.017745 +v 0.027694 0.021487 -0.003540 +v 0.017412 -0.034249 0.011864 +v -0.021909 0.023608 -0.021039 +v 0.024895 -0.032864 0.021815 +v 0.020250 -0.038219 0.031655 +v -0.018445 -0.032078 0.004603 +v -0.000240 0.032771 -0.017691 +v 0.010523 0.034681 -0.001187 +v 0.032514 -0.003384 -0.018087 +v -0.037072 0.007190 0.009616 +v 0.001740 0.029620 -0.005515 +v -0.012382 0.037777 0.015911 +v 0.005527 -0.040455 0.019503 +v 0.000824 -0.022498 -0.038545 +v -0.009606 0.031475 -0.017800 +v -0.015848 0.022528 -0.035019 +v 0.016103 -0.028064 -0.020710 +v -0.005187 -0.031847 -0.020709 +v 0.023499 -0.025994 -0.007417 +v 0.000239 -0.043173 0.031716 +v 0.030082 0.031562 0.031888 +v 0.017182 0.031975 0.002003 +v 0.002408 -0.025884 -0.005061 +v -0.041669 0.011610 0.031609 +v 0.008590 -0.042263 0.031771 +v 0.030220 -0.015375 -0.012614 +v -0.006386 -0.026353 -0.038533 +v 0.017052 0.001306 -0.003742 +v -0.007490 -0.018678 -0.005976 +v -0.036316 0.021226 0.027903 +v -0.032561 -0.021139 0.013155 +v -0.013271 -0.030473 -0.016228 +v -0.032951 0.006932 -0.013918 +v 0.023738 0.036599 0.031555 +v -0.015965 0.018540 -0.005908 +v -0.003109 0.016494 -0.004147 +v 0.000402 -0.035552 -0.001922 +v -0.008262 0.036262 0.003294 +v -0.016111 -0.027250 -0.024205 +v 0.017812 -0.031568 -0.001346 +v -0.033610 0.017174 0.010343 +v -0.021646 -0.032597 0.014427 +v 0.034529 0.010539 0.000966 +v -0.034126 0.003054 -0.006296 +v 0.034150 -0.008635 -0.003497 +v -0.008940 0.009439 -0.036706 +v -0.028696 0.021342 0.000384 +v -0.003589 -0.013395 -0.036715 +v 0.022598 0.023869 -0.017647 +v -0.011868 -0.036135 0.009277 +v 0.015810 0.020098 -0.003812 +v -0.019240 -0.010826 -0.006892 +v 0.018942 -0.007208 -0.004068 +v 0.036231 0.002151 0.001898 +v 0.015073 -0.007857 -0.037279 +v 0.000304 -0.038658 0.009334 +v 0.003130 -0.005630 -0.003781 +v 0.030685 -0.008379 -0.022811 +v -0.034613 -0.008258 -0.001795 +v -0.023340 0.031226 0.016007 +v 0.004262 -0.031371 -0.023979 +v 0.043334 0.001519 0.031954 +v -0.009483 0.003403 -0.036225 +v -0.038767 -0.001234 0.009990 +v 0.040575 -0.002558 0.019177 +v -0.003288 0.022486 -0.004357 +v -0.010869 -0.017699 -0.038137 +v 0.030845 -0.017238 -0.002885 +v -0.018388 -0.021858 -0.033380 +v 0.036104 -0.018789 0.017501 +v 0.018113 0.013234 -0.003936 +v -0.041454 -0.008554 0.026419 +v -0.022722 0.031003 0.009497 +v -0.008601 -0.005956 -0.004946 +v 0.022570 0.031849 0.011885 +v 0.026413 -0.013760 -0.031973 +v 0.000891 0.033602 -0.009440 +v 0.033807 -0.007141 -0.009778 +v -0.005920 -0.007738 -0.036064 +v -0.004747 0.031888 -0.021255 +v 0.034879 -0.022999 0.027972 +v 0.029521 -0.008063 -0.028581 +v -0.016606 0.029429 -0.008748 +v -0.026846 -0.015033 -0.028193 +v 0.033065 0.010767 -0.005328 +v -0.030332 -0.028606 0.022297 +v 0.013576 0.016909 -0.038321 +v -0.002302 0.027274 -0.036809 +v -0.021351 -0.005076 -0.038398 +v -0.025889 -0.024809 -0.004602 +v -0.036076 -0.010588 0.007975 +v 0.017309 0.025840 -0.026457 +v -0.007472 -0.036652 0.003297 +v -0.017752 -0.021567 -0.007541 +v 0.035846 0.022038 0.029108 +v 0.005106 0.017804 -0.003656 +v 0.006227 -0.036022 -0.000319 +v -0.024994 -0.021525 -0.011345 +v 0.013281 -0.021332 -0.004010 +v -0.024396 -0.013272 -0.034071 +v 0.004364 0.023967 -0.038667 +v 0.007149 0.028290 -0.004469 +v -0.032283 -0.018577 0.005912 +v -0.009013 0.032836 -0.007092 +v -0.026063 0.015265 -0.008504 +v 0.031583 0.022630 0.010507 +v -0.027246 0.006270 -0.033505 +v 0.002594 0.030248 -0.029385 +v 0.020539 0.034163 0.018948 +v 0.030809 0.002022 -0.026583 +v 0.025896 0.026420 0.005218 +v 0.031996 0.027644 0.026923 +v 0.001736 0.036398 -0.000263 +v -0.015710 0.012418 -0.005647 +v -0.006014 0.020430 -0.038236 +v 0.022266 -0.029681 0.005684 +v -0.002165 -0.033784 -0.013520 +v -0.031965 -0.012241 -0.011774 +v -0.024208 0.015807 -0.032904 +v -0.035514 -0.025537 0.031664 +v 0.020290 -0.017260 -0.038793 +v -0.017479 -0.038726 0.026727 +v -0.007813 0.029332 -0.030267 +v -0.041966 0.006239 0.031375 +v 0.013435 0.028673 -0.023612 +v 0.032988 0.004425 -0.015373 +v 0.006793 0.009282 -0.003229 +v 0.024458 -0.022019 -0.017018 +v 0.021687 0.027898 -0.005641 +v -0.006227 -0.034407 -0.008023 +v 0.004851 0.001976 -0.003305 +v -0.029061 -0.004184 -0.032694 +v 0.004745 0.032154 -0.019492 +v 0.001668 0.016592 -0.037329 +v 0.035810 0.018133 0.016207 +v 0.000194 0.037455 0.008073 +v -0.023598 0.026432 -0.001034 +v 0.001524 0.005986 -0.036027 +v 0.025072 -0.017981 -0.027636 +v 0.029593 -0.013128 -0.020248 +v 0.022107 0.003134 -0.038461 +v 0.025076 -0.010241 -0.038665 +v 0.029049 -0.024907 0.011109 +v -0.033548 -0.006947 -0.011898 +v -0.031569 -0.030470 0.031462 +v 0.008551 0.036831 0.009127 +v 0.015091 -0.014045 -0.038102 +v 0.040124 0.009732 0.021556 +v -0.034315 0.011903 -0.000888 +v 0.009106 0.026331 -0.033563 +v -0.025456 0.021815 -0.009819 +v -0.042274 0.002764 0.027096 +v -0.034825 -0.002914 -0.007760 +v -0.008619 0.010267 -0.004476 +v -0.010146 -0.029101 -0.027920 +v -0.007184 -0.024703 -0.005521 +v 0.041314 0.012483 0.031948 +v 0.017930 0.032905 0.007573 +v 0.037861 0.017120 0.026383 +v 0.004953 -0.027241 -0.034119 +v 0.029365 -0.003795 -0.032288 +v -0.023068 -0.035567 0.029724 +v 0.041512 0.007528 0.026012 +v 0.028713 -0.023510 0.002238 +v -0.001179 -0.042149 0.026162 +v -0.020560 0.021528 -0.031802 +v -0.029250 0.019660 -0.005946 +v -0.004537 -0.002959 -0.004215 +v -0.021556 0.026893 -0.010095 +v 0.027051 0.001594 -0.038689 +v -0.017875 0.031696 -0.000462 +v -0.037673 -0.013338 0.015427 +v 0.014248 0.006640 -0.003478 +v -0.032800 0.015910 0.003681 +v 0.022180 -0.006072 -0.038615 +v 0.014952 0.023130 -0.034976 +v -0.035607 0.007556 0.003596 +v 0.028832 0.027127 0.017372 +v -0.014449 0.027654 -0.026159 +v 0.002176 0.006827 -0.003338 +v 0.006761 -0.029574 -0.006894 +v 0.031892 0.003019 -0.007769 +v 0.000948 0.040035 0.017137 +v 0.014250 0.029034 -0.008130 +v -0.003168 -0.039354 0.012963 +v 0.026332 0.015229 -0.029569 +v -0.024473 0.033969 0.026442 +v -0.030847 0.014005 -0.012951 +v -0.012106 0.040273 0.026892 +v -0.009244 0.022334 -0.005338 +v 0.027014 0.006299 -0.033635 +v 0.036117 -0.009268 0.002947 +v -0.000495 0.034533 -0.004754 +v 0.040078 -0.012493 0.024312 +v 0.019243 -0.025216 -0.023291 +v 0.036983 -0.011139 0.012478 +v -0.015691 -0.025939 -0.008783 +v -0.031358 0.006262 -0.009002 +v 0.000652 -0.030480 -0.029436 +v -0.012486 0.024145 -0.038471 +v -0.004074 0.033611 -0.008110 +v 0.025134 0.032905 0.022452 +v -0.010847 -0.006642 -0.036535 +v 0.016070 -0.017311 -0.003754 +v 0.038526 0.005390 0.010794 +v -0.004068 -0.029507 -0.031854 +v -0.002084 -0.001010 -0.035696 +v -0.013094 0.000136 -0.036587 +v -0.027849 0.024880 0.008165 +v -0.036748 0.001290 0.000987 +v 0.007823 -0.021549 -0.004373 +v -0.030378 -0.012599 -0.018130 +v 0.024452 -0.031633 0.016552 +v -0.023505 -0.000446 -0.038634 +v 0.018825 0.027456 -0.015738 +v -0.028421 0.014711 -0.021937 +v -0.014367 0.036152 0.011786 +v 0.023236 0.021033 -0.007729 +v -0.029614 0.028302 0.025791 +v -0.027130 0.015018 -0.026767 +v 0.009571 0.032325 -0.013951 +v -0.009888 -0.040627 0.027637 +v -0.031339 -0.007479 -0.021449 +v -0.039418 -0.017148 0.028802 +v -0.022475 -0.030007 0.003062 +v -0.018802 0.007842 -0.037972 +v -0.026894 -0.027001 0.006255 +v -0.032010 0.006304 -0.019053 +v -0.013176 -0.036771 0.014255 +v 0.010399 0.039365 0.019616 +v 0.013939 -0.032933 -0.003778 +v -0.004182 0.009536 -0.036368 +v -0.022586 -0.034001 0.019172 +v 0.032233 -0.020194 0.009901 +v -0.002853 0.042062 0.026662 +v 0.008602 -0.032979 -0.011910 +v 0.013424 0.041338 0.032151 +v 0.030226 0.019426 -0.000104 +v -0.000923 -0.018080 -0.037570 +v 0.009446 -0.027915 -0.032454 +v -0.010010 0.014652 -0.037501 +v 0.021570 -0.035732 0.023557 +v 0.006740 -0.038164 0.009694 +v 0.029738 0.015588 -0.014748 +v 0.001035 -0.035126 -0.007177 +v -0.004593 0.037760 0.007376 +v 0.003411 -0.026906 -0.038560 +v -0.018444 0.032555 0.008290 +v 0.037106 0.012267 0.011462 +v -0.035733 0.020659 0.023221 +v -0.019230 0.039157 0.031721 +v 0.003471 0.041757 0.026062 +v 0.013774 -0.038906 0.021515 +v -0.029698 -0.008014 -0.027772 +v -0.031890 0.014998 -0.006296 +v 0.000542 -0.010240 -0.036119 +v 0.021577 0.029740 0.000598 +v 0.022854 -0.019365 -0.005948 +v -0.032820 0.023255 0.018184 +v -0.035823 0.023451 0.031983 +v -0.010489 0.042029 0.031864 +v 0.029816 0.005563 -0.029450 +v 0.036321 -0.011861 0.007155 +v -0.019429 -0.028623 -0.006514 +v -0.022415 -0.027386 -0.002889 +v 0.013564 -0.027858 -0.006822 +v 0.039918 0.005823 0.017432 +v -0.035851 -0.018046 0.015306 +v 0.024602 0.020659 -0.021273 +v -0.003703 0.030911 -0.026435 +v 0.024611 0.011980 -0.035682 +v -0.029741 0.007436 -0.028385 +v -0.008670 0.026854 -0.006550 +v -0.035011 -0.014691 0.005971 +v -0.022519 -0.015240 -0.038562 +v 0.010290 0.002603 -0.036156 +v -0.028599 0.016624 -0.016486 +v 0.015640 -0.035998 0.015961 +v 0.041304 -0.005676 0.026922 +v 0.035958 0.006904 0.003366 +v -0.016234 -0.033105 0.000416 +v -0.032121 -0.002312 -0.021182 +v -0.026741 -0.018847 -0.019343 +v -0.041540 -0.001797 0.027446 +v -0.028959 -0.008346 -0.009332 +v -0.018423 -0.028496 -0.013350 +v -0.025215 -0.002714 -0.006859 +v -0.025122 -0.030514 0.012385 +v 0.026200 0.014998 -0.006379 +v 0.013159 -0.035266 0.004860 +v 0.004877 0.031794 -0.008265 +v 0.031335 0.008062 -0.020192 +v 0.030037 -0.027031 0.021370 +v -0.008819 -0.039995 0.019932 +v -0.033279 -0.003607 -0.014934 +v 0.035705 0.012636 0.005518 +v -0.010546 -0.033173 -0.008996 +v 0.018551 0.027851 -0.010039 +v -0.016211 0.036669 0.018013 +v 0.033333 0.018997 0.008030 +v 0.032150 0.024193 0.020215 +v -0.016209 0.019353 -0.038604 +v 0.015014 0.029216 -0.018216 +v 0.023642 -0.013874 -0.035577 +v 0.028613 -0.020213 -0.007408 +v -0.026074 0.008079 -0.038195 +v 0.033927 -0.016204 0.004988 +v -0.012807 -0.024847 -0.033728 +v -0.014150 0.029854 -0.016837 +v 0.018574 0.037917 0.027536 +v -0.015810 0.031938 -0.004592 +v -0.022349 0.018245 -0.007901 +v 0.023560 0.003348 -0.003758 +v -0.030918 0.001075 -0.027282 +v 0.029920 0.007462 -0.006730 +v -0.030574 -0.016487 -0.009138 +v -0.039532 0.006484 0.020904 +v 0.037585 -0.003735 0.005010 +v 0.022217 -0.020812 -0.029437 +v -0.023806 -0.019679 -0.027473 +v 0.036309 -0.020771 0.023813 +v 0.005608 0.012371 -0.036768 +v 0.008834 -0.037732 0.013535 +v 0.012528 -0.024134 -0.038513 +v 0.026414 -0.017426 -0.023488 +v -0.020468 0.008422 -0.005925 +v 0.006016 -0.032448 -0.017131 +v 0.015708 -0.002841 -0.037055 +v -0.034337 0.008688 -0.005568 +v 0.014862 0.037033 0.016454 +v 0.038074 -0.017046 0.027585 +v 0.013259 0.033884 0.002321 +v -0.015117 -0.016774 -0.038590 +v 0.006287 -0.013102 -0.036822 +v -0.013386 -0.018773 -0.006451 +v -0.008305 0.038527 0.014435 +v 0.034868 -0.003825 -0.003623 +v -0.037708 0.015536 0.020654 +v -0.025242 -0.017705 -0.009192 +v 0.020497 -0.027627 -0.010128 +v 0.011520 0.006758 -0.036596 +v 0.033069 -0.005736 -0.014472 +v 0.031162 -0.025439 0.017487 +v 0.031530 -0.017874 0.001647 +v 0.040019 -0.007013 0.018388 +v 0.001612 -0.040454 0.021346 +v 0.027861 0.016499 -0.019943 +v -0.034128 -0.021726 0.020765 +v -0.029512 -0.023258 0.003808 +v -0.026163 -0.008064 -0.036521 +v 0.027505 0.023307 0.000358 +v 0.014969 -0.039058 0.027739 +v 0.032170 -0.026452 0.027822 +v -0.021734 0.022446 -0.025446 +v -0.015278 -0.031397 -0.004906 +v 0.025433 0.024478 -0.006404 +v -0.003010 -0.016005 -0.005318 +v -0.015482 -0.034830 0.006233 +v -0.001949 -0.026488 -0.005329 +v 0.013916 -0.029825 -0.017349 +v 0.038441 -0.001435 0.011959 +v 0.008008 0.021428 -0.038575 +v -0.039308 0.014035 0.028919 +v -0.038510 0.009327 0.015112 +v 0.024291 0.018765 -0.028183 +v 0.014472 0.035969 0.010782 +v 0.026329 -0.028359 0.013025 +v 0.004521 0.037749 0.007428 +v 0.008457 0.040775 0.028025 +v 0.026351 -0.003661 -0.003736 +v -0.028878 -0.027384 0.017648 +v 0.008722 0.033687 -0.004903 +v 0.009154 -0.034672 -0.003674 +v 0.019260 0.019626 -0.034712 +v 0.018154 0.015272 -0.038654 +v 0.032955 -0.012695 -0.002772 +v -0.016582 -0.007581 -0.006348 +v -0.033330 -0.025270 0.023922 +v 0.001778 0.027235 -0.037987 +v -0.017355 0.025254 -0.008805 +v 0.035916 -0.024139 0.031898 +v 0.035181 0.019471 0.020152 +v -0.022567 0.005784 -0.038610 +v -0.021964 -0.024014 -0.020266 +v -0.037032 -0.001987 0.006236 +v 0.043478 -0.002762 0.031886 +v -0.036065 0.013502 0.009574 +v 0.011663 0.019497 -0.003902 +v -0.015919 0.038657 0.026285 +v -0.021050 -0.017726 -0.035318 +v -0.027509 -0.022676 -0.001390 +v -0.019062 0.026287 -0.019324 +v 0.019553 0.021380 -0.005147 +v 0.029778 0.012101 -0.021382 +v -0.023342 -0.011492 -0.007146 +v -0.035444 0.017479 0.015132 +v -0.037820 0.002819 0.010079 +v 0.006681 0.023263 -0.004097 +v 0.036138 0.000253 -0.002011 +v -0.011534 0.029062 -0.008592 +v -0.038701 -0.007075 0.016532 +v -0.022548 0.000518 -0.006350 +v 0.029392 -0.023065 0.007200 +v 0.025314 -0.035179 0.031812 +v 0.022306 0.013774 -0.004021 +v -0.036520 -0.004970 0.000535 +v 0.006255 0.029390 -0.031206 +v 0.019896 -0.032027 0.008637 +v 0.002174 -0.030533 -0.007764 +v 0.004935 -0.022026 -0.038565 +v -0.028807 0.012137 -0.008710 +v -0.000731 0.025729 -0.004161 +v -0.022379 0.014961 -0.038627 +v -0.040609 -0.007642 0.022032 +v 0.031207 -0.016067 -0.007418 +v -0.009305 -0.034812 0.000090 +v 0.000184 -0.031685 -0.023449 +v 0.037055 0.003682 0.006138 +v -0.023546 0.026416 -0.005559 +v -0.012661 0.033801 0.002056 +v 0.018143 -0.020614 -0.035141 +v -0.029575 0.025800 0.014121 +v -0.025386 0.005401 -0.006153 +v -0.005311 0.027638 -0.033493 +v 0.025101 -0.027253 0.002793 +v 0.009874 -0.006520 -0.036385 +v 0.026349 0.033433 0.031611 +v -0.022960 -0.025122 -0.013240 +v -0.003169 0.039845 0.016817 +v 0.015569 -0.024429 -0.005409 +v -0.015496 -0.028559 -0.020374 +v 0.012026 -0.018369 -0.038437 +v -0.040446 0.001023 0.018166 +v 0.031792 -0.000996 -0.022568 +v 0.009553 -0.029449 -0.027209 +v -0.017428 0.024269 -0.031687 +v -0.008607 -0.022342 -0.038694 +v 0.026057 0.021448 -0.013559 +v -0.016597 -0.037445 0.022967 +v -0.002421 -0.034835 -0.005052 +v 0.028541 0.012103 -0.026860 +v -0.030402 -0.019455 -0.003508 +v 0.032284 -0.010871 -0.011590 +v -0.033168 -0.011507 -0.003738 +v 0.010534 -0.008256 -0.003805 +v 0.003602 -0.022028 -0.004752 +v -0.020372 -0.032398 0.010592 +v 0.022395 -0.023374 -0.020221 +v 0.036890 0.014345 0.017118 +v 0.013768 0.021701 -0.038704 +v -0.004981 0.039977 0.021975 +v 0.018053 0.005215 -0.003903 +v -0.006185 0.019426 -0.004709 +v -0.030567 0.000503 -0.009361 +v 0.019115 0.030517 -0.002787 +v -0.037834 -0.010943 0.012189 +v 0.020305 -0.023481 -0.026769 +v 0.001711 -0.039572 0.017416 +v -0.014420 -0.008911 -0.037290 +v 0.026328 -0.032012 0.025794 +v -0.012975 0.015559 -0.005404 +v 0.015400 -0.031007 -0.009337 +v 0.036686 -0.015175 0.014006 +v 0.011546 0.039227 0.024247 +v -0.008351 0.033102 -0.011531 +v 0.033995 -0.021356 0.019747 +v 0.008610 0.000585 -0.003309 +v -0.002321 -0.032917 -0.017524 +v 0.041488 -0.001339 0.022927 +v 0.004174 0.013917 -0.003419 +v -0.025489 0.030334 0.019265 +v 0.015185 -0.005847 -0.003829 +v 0.023253 -0.025063 -0.011488 +v 0.004607 -0.042354 0.031389 +v -0.010470 0.038419 0.019992 +v 0.029225 0.000025 -0.005176 +v 0.010937 0.028327 -0.005754 +v -0.012342 -0.027354 -0.007118 +v 0.032949 0.000854 -0.017153 +v 0.006806 -0.017582 -0.004653 +v -0.024004 0.027929 0.005680 +v -0.030486 -0.003212 -0.028940 +v -0.009429 -0.009817 -0.005423 +v 0.002536 -0.036343 0.002488 +v -0.002296 0.036384 -0.000459 +v 0.027368 -0.019582 -0.014198 +v 0.030132 -0.013799 -0.016370 +v -0.032545 -0.013446 -0.007185 +v 0.023179 -0.006041 -0.003811 +v -0.027608 -0.000942 -0.034445 +v -0.012351 -0.037875 0.018120 +v 0.019390 -0.025186 -0.007218 +v 0.024246 -0.025342 -0.003589 +v 0.042714 0.003587 0.028642 +v -0.018541 -0.007820 -0.037950 +v -0.009366 -0.038060 0.011703 +v 0.031209 0.015761 -0.007691 +v 0.018028 -0.035897 0.020104 +v 0.000428 0.033756 -0.013349 +v 0.001447 -0.013366 -0.004598 +v 0.020932 -0.028891 -0.004166 +v -0.015824 -0.022377 -0.036317 +v -0.033505 -0.019630 0.009499 +v -0.038483 -0.014093 0.020078 +v -0.015577 0.030050 -0.013182 +v -0.007101 -0.015363 -0.037254 +v 0.022315 0.009244 -0.038663 +v 0.034590 -0.003111 -0.008623 +v 0.027905 -0.012756 -0.006113 +v 0.038250 0.020956 0.032015 +v 0.007375 0.038681 0.014098 +v -0.002949 -0.042151 0.029663 +v -0.019542 -0.023555 -0.028643 +v 0.012196 -0.031657 -0.012732 +v -0.024566 0.012399 -0.034797 +v 0.042313 -0.010706 0.032010 +v 0.010574 0.028480 -0.029629 +v -0.002766 -0.024047 -0.038672 +v 0.027579 -0.030211 0.020328 +v 0.002142 0.037200 0.003540 +v 0.029508 0.030755 0.028111 +v -0.010468 0.002808 -0.004672 +v 0.006866 -0.006757 -0.003722 +v -0.021018 -0.021806 -0.009664 +v -0.037755 -0.006829 0.008093 +v -0.028527 -0.031122 0.029110 +v 0.018563 0.029968 -0.006769 +v 0.007030 0.026399 -0.036850 +v 0.040464 -0.009466 0.026738 +v 0.021891 0.035642 0.028276 +v 0.009202 -0.040149 0.021343 +v 0.000021 0.027931 -0.033568 +v 0.003329 0.026448 -0.003729 +v -0.032871 -0.016505 0.000295 +v 0.024586 0.007073 -0.003953 +v -0.004313 0.023878 -0.038662 +v 0.040120 -0.016245 0.031976 +v -0.008717 0.034364 -0.001272 +v -0.010440 0.025697 -0.034188 +v 0.031029 -0.007706 -0.007163 +v 0.005511 -0.031974 -0.009638 +v 0.020752 -0.033702 0.013696 +v -0.033031 0.026199 0.027675 +v 0.004014 -0.001900 -0.003503 +v -0.020185 -0.006318 -0.006823 +v 0.038432 -0.012011 0.020691 +v 0.040621 0.001761 0.018106 +v -0.000518 -0.004470 -0.003943 +v -0.004964 -0.028672 -0.006226 +v 0.003765 0.040761 0.021199 +v 0.014466 -0.001511 -0.003583 +v 0.032827 0.014173 -0.000297 +v 0.035095 0.004127 -0.005996 +v -0.018243 0.035959 0.022558 +v -0.035177 -0.006247 -0.004997 +v -0.026798 -0.020500 -0.014555 +v 0.023489 -0.000811 -0.038646 +v 0.010120 0.036004 0.004208 +v -0.030808 0.008711 -0.021761 +v -0.006636 -0.014853 -0.005604 +v 0.007148 0.031075 -0.022249 +v -0.000363 0.002383 -0.035900 +v 0.001475 0.018995 -0.003908 +v -0.013262 0.021559 -0.005933 +v 0.010509 -0.040635 0.028911 +v 0.019684 -0.030671 0.002580 +v -0.039595 -0.000823 0.013737 +v 0.013829 -0.036814 0.012472 +v -0.004995 -0.007113 -0.004596 +v -0.002657 0.017232 -0.037439 +v -0.002378 0.004286 -0.003694 +v -0.005941 0.032425 -0.017471 +v 0.041900 0.002466 0.024657 +v -0.036326 -0.022916 0.028476 +v 0.013282 0.002967 -0.003412 +v -0.024119 -0.021253 -0.021735 +v 0.020601 -0.036249 0.027374 +v 0.019604 0.006096 -0.038021 +v 0.002110 -0.009258 -0.004139 +v 0.014427 0.009089 -0.037253 +v 0.015118 0.010317 -0.003674 +v -0.006883 0.001679 -0.004242 +v 0.009056 -0.035802 0.004819 +v -0.004094 0.012846 -0.004009 +v -0.014926 0.000138 -0.005402 +v -0.012211 -0.004636 -0.005359 +v -0.030188 -0.023957 0.011808 +v -0.010013 -0.031371 -0.017903 +v -0.013010 -0.008693 -0.005868 +v 0.008740 -0.031307 -0.019624 +v -0.004825 -0.027014 -0.035166 +v -0.004943 -0.040736 0.020915 +v 0.018614 -0.005203 -0.037761 +v 0.024807 -0.020535 -0.020788 +v -0.036058 -0.010836 0.004216 +v -0.011682 0.036162 0.007591 +v -0.035244 0.002078 -0.002374 +v 0.000471 0.015372 -0.003697 +v -0.024757 -0.032453 0.022631 +v -0.002069 0.043328 0.031785 +v 0.030084 0.001789 -0.030426 +v 0.011496 0.011621 -0.003455 +v 0.032174 0.008091 -0.016529 +v 0.004726 -0.040584 0.023445 +v 0.033854 0.003598 -0.011770 +v 0.014789 -0.032876 0.000580 +v 0.021691 0.025736 -0.014031 +v -0.012166 0.011345 -0.005056 +v -0.024123 -0.034859 0.025602 +v 0.025794 -0.022605 -0.006787 +v 0.005842 0.005589 -0.003222 +v -0.026695 0.028423 0.016066 +v -0.009575 0.006579 -0.004515 +v -0.005407 -0.039012 0.016137 +v -0.016664 0.008729 -0.005628 +v -0.003376 -0.037920 0.006565 +v -0.038203 -0.016931 0.023899 +v 0.013156 0.031699 -0.010915 +v -0.021764 0.024843 -0.016948 +v 0.007776 0.012933 -0.003358 +v -0.027273 -0.027697 0.009931 +v 0.015896 -0.025195 -0.031881 +v 0.001267 0.003011 -0.003445 +v -0.030846 0.018900 0.002612 +v -0.016060 -0.039401 0.030539 +v -0.028836 0.022446 0.004143 +v 0.003994 0.030954 -0.026007 +v -0.022458 0.023597 -0.011575 +v -0.013813 -0.039281 0.026386 +v -0.015289 0.003250 -0.037004 +v 0.026029 0.029581 0.012974 +v -0.019849 -0.001720 -0.037853 +v -0.026807 0.024741 0.000034 +v 0.016805 0.038144 0.024277 +v 0.024440 0.028762 0.008640 +v 0.041737 0.009827 0.028911 +v -0.006281 0.001568 -0.035932 +v 0.025701 -0.024954 -0.000209 +v -0.026897 0.019753 -0.015499 +v -0.018915 0.012877 -0.038534 +v -0.010425 -0.035727 0.005615 +v 0.007703 -0.003168 -0.003475 +v -0.028579 -0.019501 -0.010477 +v 0.020239 -0.017691 -0.003970 +v -0.000333 -0.026913 -0.038735 +v 0.034722 -0.018994 0.014096 +v -0.027444 0.002722 -0.034612 +v 0.018558 0.002514 -0.037603 +v 0.004316 0.020342 -0.038099 +v -0.016975 -0.017639 -0.006869 +v 0.005203 0.035292 -0.000700 +v -0.038248 0.018138 0.028289 +v 0.013689 0.025751 -0.005147 +v -0.008958 0.023186 -0.038628 +v -0.039616 0.011787 0.023258 +v -0.018385 -0.026369 -0.021482 +v -0.024002 0.033254 0.022092 +v -0.006899 -0.030865 -0.023783 +v 0.037802 -0.016215 0.019676 +v 0.012373 0.033622 -0.004151 +v 0.028027 0.030961 0.024779 +v -0.027845 -0.015591 -0.022571 +v 0.027897 0.025269 0.008239 +v 0.017340 0.035910 0.018955 +v 0.040047 -0.001162 0.015710 +v -0.025401 0.034220 0.029955 +v -0.014722 0.010512 -0.037447 +v 0.014611 -0.028071 -0.024028 +v -0.008642 -0.034009 -0.004477 +v 0.023597 0.014777 -0.033573 +v -0.030835 0.029297 0.030029 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/cup_1.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/cup_1.obj new file mode 100644 index 0000000000000000000000000000000000000000..a47b2b0a06f9c7f3668a26ae22dc435bf7bf0582 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/cup_1.obj @@ -0,0 +1,1019 @@ +o kp.000 +v -0.001000 -0.001000 0.063000 +v -0.001000 0.001000 0.063000 +v -0.001000 -0.001000 0.061000 +v -0.001000 0.001000 0.061000 +v 0.001000 -0.001000 0.063000 +v 0.001000 0.001000 0.063000 +v 0.001000 -0.001000 0.061000 +v 0.001000 0.001000 0.061000 +o mesh +v -0.000296 -0.025262 -0.071292 +v 0.002027 0.020202 0.062873 +v -0.006765 0.025195 -0.013614 +v 0.006528 -0.024369 0.020581 +v 0.025685 -0.014011 -0.027145 +v 0.011135 0.024813 -0.062479 +v -0.022116 -0.016677 -0.030016 +v -0.020902 0.009906 0.025524 +v -0.002837 -0.021727 0.061702 +v 0.019684 0.015334 0.017267 +v -0.024670 0.005955 -0.064376 +v 0.027853 -0.006140 -0.062728 +v 0.022776 -0.004850 0.045669 +v 0.021402 0.019042 -0.031255 +v -0.019869 -0.016127 0.002886 +v 0.000410 0.003734 -0.082930 +v 0.003494 -0.029730 -0.040506 +v -0.021222 0.001299 0.055255 +v -0.013654 0.024399 -0.043245 +v 0.005409 -0.026876 -0.009568 +v 0.025169 -0.009295 0.001859 +v -0.016661 -0.016337 0.034307 +v -0.025262 0.005703 -0.013646 +v 0.001433 0.020875 0.036114 +v -0.021142 -0.020140 -0.055521 +v -0.004330 0.023976 0.011605 +v 0.018059 0.019481 -0.006898 +v -0.001855 -0.001719 0.015967 +v -0.027213 0.004697 -0.039183 +v 0.016994 -0.013167 -0.082694 +v -0.017996 -0.010668 -0.079945 +v 0.021257 0.009273 -0.077520 +v 0.021259 -0.007882 0.023546 +v 0.017445 -0.024733 -0.057271 +v -0.008441 0.021137 -0.072862 +v 0.027507 0.013246 -0.052435 +v 0.007548 -0.022275 0.042416 +v 0.019692 0.007553 0.062828 +v 0.016114 -0.013607 0.062971 +v 0.006657 0.027862 -0.042357 +v 0.027571 0.005098 -0.017734 +v -0.021947 0.004194 0.006245 +v 0.019533 0.012856 0.037340 +v 0.030244 -0.003714 -0.043346 +v -0.012206 0.017622 0.050120 +v -0.013646 -0.023476 -0.013670 +v -0.018910 0.018909 -0.026122 +v -0.017634 0.007458 -0.081827 +v -0.004116 -0.025779 0.006047 +v -0.022846 -0.007265 0.020204 +v -0.016051 -0.015164 0.051665 +v 0.006790 0.026584 -0.025035 +v -0.005926 -0.029546 -0.055034 +v 0.013062 -0.025700 -0.025640 +v -0.016050 0.019173 -0.000467 +v 0.007184 0.019969 -0.079878 +v 0.014380 -0.022331 0.004463 +v 0.020551 -0.018948 -0.011768 +v 0.020594 -0.022110 -0.040964 +v -0.005548 0.027324 -0.057549 +v -0.020648 -0.000585 0.038363 +v -0.028301 -0.005649 -0.052500 +v -0.013195 -0.020921 0.018778 +v -0.012455 -0.026352 -0.039412 +v -0.002962 -0.028264 -0.025360 +v 0.025456 0.007552 0.001243 +v -0.002628 -0.013482 -0.083247 +v 0.010364 0.017847 0.049423 +v -0.024456 -0.010152 -0.015337 +v -0.023407 0.016159 -0.052474 +v 0.003640 0.025293 -0.001961 +v 0.012769 0.002305 0.013815 +v -0.010510 0.020519 0.027110 +v 0.006794 0.021000 0.022271 +v -0.023319 -0.009967 -0.066018 +v -0.003860 -0.023897 0.030944 +v -0.011076 0.010801 0.014789 +v -0.013988 -0.020883 -0.069082 +v -0.006756 0.026370 -0.030229 +v 0.028555 0.006510 -0.033498 +v -0.015749 0.012140 0.062783 +v 0.015232 -0.019233 0.030829 +v 0.008710 0.016796 0.008474 +v -0.026838 -0.001806 -0.026495 +v 0.013487 -0.021675 -0.072040 +v 0.018508 0.023107 -0.047761 +v 0.027148 -0.015519 -0.052583 +v -0.006073 -0.022215 0.044834 +v 0.026301 0.007802 -0.064846 +v -0.015318 0.013410 0.037612 +v -0.024277 -0.015148 -0.043439 +v 0.023997 0.004761 0.027637 +v -0.000691 -0.013264 0.022597 +v 0.025800 -0.000188 0.013050 +v 0.027069 -0.006448 -0.010916 +v 0.018925 0.007515 0.049741 +v 0.023848 -0.004318 -0.076192 +v -0.024871 -0.005446 -0.002380 +v 0.012922 0.000564 -0.083212 +v 0.017771 -0.018416 0.017023 +v -0.016963 0.019286 -0.063099 +v -0.018349 0.018242 -0.013361 +v -0.017071 -0.008611 0.062602 +v 0.008167 -0.020988 0.055384 +v -0.005621 0.014740 -0.083512 +v 0.006894 -0.030082 -0.052532 +v 0.021680 0.016986 -0.018454 +v -0.021930 0.016689 -0.038669 +v 0.017320 -0.015509 0.047805 +v 0.022386 -0.016724 -0.064941 +v 0.016703 0.018296 -0.070928 +v 0.007347 -0.020361 -0.082259 +v 0.001490 0.009656 0.014748 +v -0.000816 0.021573 0.051173 +v -0.010962 -0.009253 0.018131 +v -0.022311 -0.001214 -0.074295 +v 0.021844 -0.010452 0.035309 +v -0.013786 -0.024674 -0.027870 +v 0.009272 0.024895 -0.012201 +v 0.030789 0.001545 -0.054564 +v -0.010095 -0.001166 -0.083260 +v 0.021764 -0.004403 0.058962 +v -0.025113 0.009581 -0.028713 +v 0.025588 0.015050 -0.041372 +v 0.012226 0.019889 0.032292 +v 0.013215 0.016694 0.061205 +v -0.006019 -0.026213 -0.005797 +v 0.021442 0.018665 -0.060276 +v 0.005072 0.028754 -0.053497 +v 0.008389 -0.007678 0.019062 +v -0.027123 -0.006421 -0.036970 +v -0.020316 0.007933 0.046033 +v -0.027874 0.005447 -0.051004 +v 0.028722 -0.003309 -0.025809 +v -0.022654 0.010993 -0.004165 +v 0.019773 0.016488 0.006222 +v -0.018443 0.013260 -0.072270 +v 0.000878 0.025194 -0.066569 +v -0.023609 0.003463 0.017035 +v -0.003464 0.028381 -0.046370 +v -0.023574 -0.007525 0.008413 +v 0.007340 -0.027250 -0.062961 +v 0.012793 0.011631 -0.083550 +v 0.026974 -0.013752 -0.039349 +v -0.006987 0.024289 -0.002431 +v -0.015261 0.023986 -0.053701 +v 0.006924 -0.008969 -0.083218 +v -0.021888 -0.007914 0.030745 +v -0.019169 0.014761 0.008563 +v 0.021504 0.002039 0.037835 +v -0.020312 -0.016683 -0.008247 +v -0.011197 -0.018610 -0.079923 +v 0.023609 -0.010977 0.012620 +v 0.005835 -0.025260 0.010218 +v 0.024986 0.010832 -0.009446 +v 0.013501 0.024916 -0.034357 +v -0.020971 -0.006768 0.048367 +v 0.012875 -0.026849 -0.036149 +v -0.007876 0.019169 0.060417 +v -0.012211 -0.017622 0.062182 +v -0.013895 0.000703 0.015438 +v -0.008157 0.020736 0.039430 +v -0.004108 -0.024896 0.017190 +v -0.014655 -0.026165 -0.050939 +v 0.029466 0.006569 -0.044851 +v 0.018053 0.012817 0.026747 +v -0.020162 -0.018240 -0.020403 +v -0.002584 -0.027568 -0.015318 +v -0.012817 -0.022753 0.000939 +v 0.020427 -0.020313 -0.021810 +v -0.012381 0.020451 0.015914 +v 0.020981 -0.017230 -0.002173 +v 0.013485 -0.027458 -0.045926 +v -0.002589 0.019725 0.020137 +v 0.006357 -0.023608 0.030238 +v 0.012902 -0.024847 -0.015309 +v 0.005507 -0.026123 0.000005 +v -0.020094 -0.014309 0.014330 +v -0.010017 0.017214 0.007186 +v -0.018509 -0.015215 0.025007 +v 0.027014 -0.000743 -0.003120 +v -0.006652 -0.026331 -0.064354 +v -0.002339 0.026542 -0.021867 +v -0.021367 0.000522 0.026509 +v -0.011846 0.023709 -0.022089 +v 0.023832 0.009505 0.011128 +v 0.013507 0.021984 0.000938 +v 0.014895 0.023258 -0.021729 +v 0.001727 0.027743 -0.033824 +v 0.014374 -0.023221 -0.004816 +v 0.005388 -0.028611 -0.029959 +v 0.021764 -0.012926 -0.073294 +v -0.015296 0.022629 -0.034371 +v -0.020438 -0.009826 0.039735 +v -0.013054 -0.015964 0.043055 +v 0.005275 -0.027708 -0.019945 +v 0.025390 0.012683 -0.025575 +v -0.019553 -0.020786 -0.038082 +v 0.020780 -0.021049 -0.031935 +v -0.001745 -0.020276 0.052818 +v -0.005608 -0.029268 -0.044557 +v 0.025007 -0.013530 -0.017478 +v -0.003377 -0.028889 -0.034686 +v 0.028988 -0.006446 -0.034266 +v 0.003088 0.012305 -0.083221 +v 0.030352 -0.007072 -0.052069 +v 0.005728 0.023884 0.013113 +v -0.022815 0.013121 -0.020569 +v -0.013596 -0.021524 0.009655 +v -0.026359 -0.002999 -0.061537 +v -0.019107 0.013808 0.017816 +v -0.017072 0.009330 0.054530 +v -0.018909 -0.001857 -0.082386 +v -0.010056 -0.019140 0.026893 +v -0.003180 -0.022165 -0.079489 +v 0.008427 0.022818 -0.070581 +v 0.000303 0.022404 -0.075022 +v 0.013690 0.018162 0.041147 +v 0.008115 -0.016117 0.022944 +v -0.012854 0.015901 -0.078804 +v 0.016448 -0.017340 0.039237 +v 0.021872 -0.021795 -0.049779 +v -0.001582 0.023155 0.028330 +v 0.014252 0.010741 0.011152 +v -0.009960 -0.021371 0.036431 +v 0.013504 0.020772 0.014779 +v -0.028168 -0.001079 -0.045380 +v 0.016762 -0.004950 0.015535 +v -0.026329 -0.002286 -0.018113 +v -0.025626 -0.012357 -0.056812 +v 0.024063 0.007136 0.019191 +v -0.014502 -0.024486 -0.059169 +v -0.025548 0.011362 -0.044051 +v -0.020936 0.008448 0.033868 +v 0.013507 0.026420 -0.053609 +v 0.024242 -0.002655 0.031467 +v -0.018884 0.004295 0.062679 +v 0.026354 -0.000716 -0.069114 +v -0.007996 0.024131 -0.064805 +v -0.025081 0.002845 -0.002234 +v 0.019306 -0.011841 0.055523 +v -0.000927 -0.021240 0.038422 +v -0.010440 -0.009423 -0.083335 +v 0.021410 -0.015682 0.006205 +v 0.003500 0.020275 0.044080 +v -0.000115 -0.004733 -0.082860 +v -0.012621 0.022221 -0.008700 +v 0.021705 0.000870 -0.082161 +v 0.005374 -0.019560 0.062924 +v 0.001070 0.026135 -0.011799 +v 0.022148 0.014533 -0.001991 +v -0.009320 -0.026273 -0.020800 +v -0.019947 0.019578 -0.046041 +v -0.025365 -0.009448 -0.024402 +v -0.025722 -0.002715 -0.010096 +v 0.015160 0.013226 0.054206 +v -0.016894 0.015359 0.029864 +v -0.006038 0.027258 -0.038838 +v -0.009607 -0.020079 0.054401 +v 0.022684 0.000052 0.052367 +v -0.019192 -0.014482 -0.071165 +v -0.019660 -0.021651 -0.046671 +v -0.023234 0.013250 -0.059897 +v 0.026381 0.000253 0.004763 +v -0.018238 0.007899 0.012581 +v 0.020471 0.020791 -0.039500 +v 0.019740 -0.015326 0.025704 +v 0.028309 0.004516 -0.025630 +v 0.012715 -0.022601 0.012727 +v -0.019540 -0.018411 -0.062939 +v -0.001610 0.024946 0.003752 +v 0.022098 0.012830 -0.069849 +v 0.006505 0.024279 0.005420 +v 0.025147 -0.001623 0.021295 +v 0.016100 -0.022823 -0.064567 +v -0.000222 -0.024800 0.024274 +v 0.005144 0.019249 0.055323 +v 0.014163 0.019433 0.023420 +v -0.021044 0.006568 -0.074591 +v -0.025982 0.005324 -0.022547 +v 0.024687 -0.012331 -0.006846 +v 0.005771 -0.023453 -0.075591 +v -0.010421 0.008760 -0.083300 +v -0.008163 -0.022523 -0.073929 +v 0.001305 -0.022991 0.046441 +v 0.002711 0.017275 0.014800 +v 0.027419 0.003422 -0.010478 +v 0.011526 -0.020123 0.048509 +v -0.004938 0.014903 0.014020 +v -0.027278 -0.008426 -0.045607 +v 0.016706 0.021320 -0.014865 +v -0.020213 -0.000357 0.011758 +v -0.015351 -0.021677 -0.006238 +v -0.020294 -0.006959 0.056245 +v 0.013755 -0.018771 -0.079178 +v 0.021611 0.008305 0.043039 +v -0.020247 0.000674 0.046234 +v 0.017843 -0.006018 -0.083580 +v 0.015450 -0.011791 0.018804 +v 0.013055 -0.021343 0.023756 +v 0.027025 -0.012457 -0.059131 +v 0.014839 0.024815 -0.041531 +v 0.023481 -0.019112 -0.057638 +v 0.016165 0.013234 0.046342 +v 0.016925 0.015003 -0.077971 +v -0.022469 0.012472 -0.012129 +v 0.000693 -0.028703 -0.060630 +v -0.014514 0.015656 0.023026 +v 0.005742 0.001894 0.015258 +v 0.027851 -0.005339 -0.017964 +v -0.007056 0.003203 0.015751 +v -0.015292 0.013506 0.044767 +v 0.014427 -0.017533 0.054513 +v 0.010235 -0.019325 0.036316 +v 0.022145 0.020456 -0.053395 +v -0.006483 0.020795 0.046901 +v -0.009026 0.027117 -0.050663 +v -0.000719 0.019677 -0.081930 +v 0.025954 0.013127 -0.033326 +v 0.029943 0.001922 -0.039029 +v 0.028660 -0.011011 -0.045682 +v 0.010188 0.023991 -0.005002 +v -0.000236 -0.030277 -0.049031 +v 0.028730 0.001511 -0.061319 +v -0.017598 -0.007785 0.015146 +v 0.005089 0.020943 0.029074 +v 0.002435 0.027285 -0.060086 +v 0.018968 0.004339 0.011330 +v 0.026481 0.012101 -0.059368 +v -0.024001 -0.016440 -0.050371 +v -0.027106 0.001960 -0.032803 +v -0.025548 -0.010305 -0.031288 +v -0.008802 -0.015675 0.021043 +v -0.017182 -0.011919 0.008538 +v 0.025069 -0.017690 -0.044696 +v 0.025592 -0.005839 0.008456 +v -0.022674 -0.011976 -0.001944 +v 0.018711 -0.010468 0.043323 +v -0.022273 0.015380 -0.031068 +v -0.026528 0.007786 -0.057350 +v 0.014190 0.020982 0.007948 +v -0.013791 0.015797 0.056499 +v 0.007907 0.021453 0.038140 +v 0.020836 0.001909 0.045224 +v -0.024718 -0.001848 0.004883 +v -0.008895 0.023079 0.003952 +v 0.019664 -0.006184 0.051845 +v -0.024930 0.011301 -0.035917 +v 0.025379 -0.007369 -0.069432 +v -0.024472 0.000057 -0.067587 +v -0.021466 0.012155 -0.066385 +v 0.006938 0.006817 -0.083208 +v -0.019056 0.016441 -0.005798 +v -0.001287 -0.026627 0.000036 +v 0.019486 0.000869 0.062522 +v 0.016481 0.021003 -0.064810 +v 0.003023 -0.018317 0.026676 +v -0.001271 -0.007493 0.019276 +v -0.020803 -0.001971 0.061439 +v -0.021588 0.011963 0.002327 +v -0.019668 -0.001624 0.018796 +v -0.014052 0.018683 -0.070353 +v -0.015472 -0.022902 -0.020641 +v 0.018191 0.007815 -0.083266 +v 0.023287 -0.004950 0.039077 +v -0.010889 0.017598 0.034309 +v -0.023657 -0.015151 -0.036241 +v 0.012651 0.024819 -0.027709 +v -0.016791 0.020260 -0.019508 +v -0.021124 -0.008740 -0.073671 +v -0.005357 0.022106 0.033666 +v 0.004691 0.026420 -0.018836 +v 0.021984 0.009445 0.032331 +v 0.018430 0.007167 0.056432 +v 0.023641 0.003302 -0.076401 +v -0.006968 0.018527 0.053903 +v 0.011227 -0.027854 -0.057763 +v -0.024274 -0.009464 -0.008860 +v -0.028356 0.000068 -0.055619 +v 0.002279 -0.025328 0.015762 +v -0.016668 -0.011375 0.045891 +v -0.009667 -0.017960 0.048199 +v -0.011241 0.024733 -0.059190 +v -0.009146 -0.027228 -0.032342 +v 0.008436 -0.024771 -0.069543 +v -0.008320 -0.024019 0.012349 +v -0.001479 0.028863 -0.052850 +v 0.011644 -0.018841 0.061853 +v 0.017547 -0.019400 0.010067 +v -0.015866 -0.014241 0.019319 +v 0.019636 0.020003 -0.024383 +v 0.024543 0.007022 -0.070856 +v -0.003390 -0.019554 0.025726 +v 0.004120 -0.015054 -0.083247 +v -0.018494 -0.019385 -0.013627 +v -0.011501 -0.027307 -0.045548 +v -0.021176 0.006691 0.039888 +v 0.025275 0.011919 -0.019349 +v 0.007786 0.026867 -0.032461 +v 0.018542 -0.018008 -0.071545 +v -0.015787 -0.011316 0.056597 +v 0.029601 0.007869 -0.054863 +v 0.022027 0.015903 -0.012303 +v 0.029405 0.000445 -0.032240 +v 0.024885 -0.016299 -0.032902 +v 0.022231 -0.012438 0.019386 +v -0.007547 0.019114 -0.079322 +v 0.016067 0.023675 -0.058562 +v -0.012456 0.023923 -0.028999 +v 0.004355 -0.023596 0.036178 +v 0.014656 -0.027365 -0.052003 +v -0.015203 0.015470 0.013310 +v -0.009105 0.019548 0.021086 +v 0.023267 0.018631 -0.045839 +v -0.000378 0.027297 -0.027669 +v -0.022892 0.000233 0.032481 +v 0.007496 -0.029430 -0.045183 +v -0.002477 0.022093 0.041376 +v 0.022807 -0.009407 0.029305 +v 0.011207 -0.015024 -0.083585 +v 0.000499 -0.026908 -0.005881 +v -0.016852 -0.022865 -0.032851 +v 0.009747 0.027616 -0.048937 +v -0.007555 -0.023548 0.022054 +v 0.027845 0.010034 -0.038752 +v -0.023840 -0.004238 0.015018 +v -0.006249 0.004338 -0.083142 +v 0.004936 -0.000308 -0.082977 +v -0.000186 0.023969 0.016537 +v -0.020632 0.018294 -0.057417 +v 0.017573 -0.013733 0.031756 +v -0.007350 -0.025323 0.000705 +v 0.018187 -0.007738 0.062500 +v 0.024555 -0.006974 0.018323 +v 0.002325 -0.021890 0.058270 +v -0.001577 0.025660 -0.006405 +v 0.017118 0.016441 0.031694 +v -0.021887 0.008783 0.019591 +v -0.003554 0.023535 -0.070322 +v 0.007922 0.019057 0.062829 +v 0.008488 0.011975 0.012243 +v -0.018604 -0.020610 -0.027167 +v 0.030738 -0.000671 -0.048484 +v 0.017496 0.012694 0.059977 +v 0.027501 -0.008524 -0.023016 +v -0.019778 -0.008753 0.025113 +v 0.026228 -0.007449 -0.003772 +v -0.005232 0.008835 0.015001 +v -0.015795 -0.016404 -0.075675 +v -0.000190 0.003979 0.015388 +v -0.002359 0.020954 0.056882 +v -0.025981 0.011294 -0.050248 +v 0.000953 -0.030415 -0.054971 +v 0.003801 -0.003433 0.016911 +v -0.005941 -0.018603 -0.083301 +v -0.012187 0.018230 0.042939 +v -0.008715 -0.002354 0.016762 +v 0.001504 -0.020615 -0.082928 +v 0.021589 -0.008835 -0.079203 +v 0.002281 0.028729 -0.047554 +v -0.016545 0.013585 0.050522 +v -0.027607 0.004805 -0.045035 +v 0.001133 0.028236 -0.040476 +v -0.012321 0.022827 -0.014507 +v 0.018151 -0.021726 -0.016307 +v 0.017986 0.017672 0.011648 +v -0.015664 0.018845 0.006315 +v -0.009722 -0.023914 0.006051 +v -0.015751 -0.006689 -0.083527 +v -0.018139 0.020779 -0.040268 +v -0.017410 -0.019239 -0.001346 +v 0.007845 0.020981 0.000222 +v 0.010543 0.017164 0.055493 +v -0.015043 0.002556 -0.083479 +v -0.025492 0.002858 -0.008566 +v 0.008497 -0.025081 0.004845 +v -0.021832 -0.004382 0.043178 +v 0.011929 0.017135 -0.081545 +v -0.017875 -0.017677 0.009296 +v 0.023351 0.014163 -0.064387 +v 0.001844 0.024662 0.008763 +v 0.027860 -0.001004 -0.014117 +v 0.011701 -0.005779 -0.083216 +v 0.016255 -0.024652 -0.032063 +v 0.023100 0.012268 0.003480 +v -0.006416 0.020755 0.015850 +v 0.021623 -0.002484 0.025720 +v -0.014293 -0.015989 0.029094 +v 0.009807 -0.019391 0.028500 +v 0.000122 -0.025901 0.009879 +v -0.007546 -0.026210 -0.011285 +v 0.002414 -0.029350 -0.034926 +v 0.018026 0.018836 -0.000515 +v 0.025581 -0.011041 -0.065089 +v 0.011016 -0.027184 -0.030784 +v 0.021916 -0.004391 0.012543 +v 0.011609 0.020209 -0.074490 +v 0.005365 0.025495 -0.008159 +v -0.027055 -0.004861 -0.031314 +v 0.000717 0.023607 0.022554 +v 0.029062 -0.008283 -0.040279 +v -0.000686 -0.026990 -0.065798 +v 0.010928 -0.025237 -0.010068 +v 0.026686 0.004991 -0.005144 +v 0.012529 -0.017276 0.043784 +v 0.027560 0.012064 -0.045687 +v 0.019818 0.010779 0.020530 +v -0.025916 -0.011136 -0.039733 +v 0.005577 -0.020165 0.048690 +v 0.011392 0.024405 -0.017354 +v -0.017868 -0.011672 0.029763 +v -0.007212 -0.018238 0.059772 +v -0.021980 -0.015066 -0.014418 +v 0.020716 -0.015748 0.012842 +v -0.022161 -0.005380 0.035703 +v -0.023842 0.006930 0.001554 +v 0.001135 -0.021683 0.031960 +v 0.018283 -0.022626 -0.026384 +v -0.017807 0.011004 -0.077305 +v 0.023931 -0.018226 -0.038113 +v -0.012100 0.016321 0.062732 +v -0.026766 -0.011037 -0.051546 +v -0.007256 -0.028341 -0.038611 +v 0.029871 -0.004953 -0.057170 +v 0.007684 -0.026585 -0.014617 +v -0.011762 -0.015681 0.057017 +v -0.006894 0.024620 -0.007952 +v -0.019454 -0.002395 0.051539 +v -0.023258 -0.013665 -0.020218 +v -0.023627 0.005165 0.011785 +v 0.015610 -0.025626 -0.040777 +v 0.025661 0.004069 0.009573 +v -0.008937 -0.026845 -0.026250 +v -0.014947 -0.019220 0.023688 +v 0.024871 0.016498 -0.056521 +v 0.028134 -0.008200 -0.029148 +v -0.022964 -0.014478 -0.061273 +v -0.003317 0.026056 -0.062733 +v -0.010167 0.025547 -0.035692 +v 0.022309 0.007601 0.037462 +v -0.022285 -0.011644 0.005074 +v -0.020152 0.003153 -0.079613 +v 0.020277 -0.011093 0.049029 +v 0.023506 0.017284 -0.036635 +v -0.011581 -0.027419 -0.055633 +v -0.008596 -0.028778 -0.050355 +v 0.012162 -0.017581 0.019626 +v -0.019159 0.004468 0.051354 +v -0.023041 0.004272 0.022953 +v -0.019873 0.020205 -0.051753 +v 0.010818 -0.026111 -0.020726 +v 0.004659 -0.012064 0.021978 +v -0.020359 0.005216 0.029570 +v -0.010916 0.021702 0.010058 +v -0.016101 -0.013872 0.061911 +v -0.024178 -0.006977 0.002744 +v -0.019282 0.019069 -0.033605 +v -0.003560 -0.000597 -0.082950 +v 0.018053 -0.024648 -0.046368 +v -0.000085 -0.027907 -0.020280 +v -0.014513 -0.014231 -0.081934 +v -0.001285 0.009199 -0.083171 +v 0.018674 -0.019180 0.003200 +v -0.015969 -0.024550 -0.043036 +v 0.028534 0.000711 -0.021862 +v 0.004439 0.021343 0.050151 +v 0.009029 0.020414 0.044919 +v 0.008663 0.020698 0.017275 +v -0.022064 0.010289 0.008169 +v -0.020090 0.006703 0.058067 +v 0.030342 0.004703 -0.050282 +v -0.020840 -0.012211 0.020148 +v -0.027661 -0.000421 -0.037736 +v -0.014444 0.011426 0.018867 +v 0.002392 -0.028469 -0.024959 +v 0.027456 -0.011669 -0.034490 +v -0.010934 0.018626 0.001909 +v 0.017909 -0.015525 -0.078033 +v 0.008176 -0.028637 -0.038270 +v -0.005369 -0.024882 -0.069818 +v 0.006178 0.025562 -0.064150 +v 0.022066 0.002240 0.057136 +v 0.013425 0.022867 -0.009023 +v -0.017369 0.010132 0.041208 +v -0.006698 0.025556 -0.019068 +v 0.010726 -0.024614 0.000093 +v 0.025393 -0.011889 -0.012489 +v 0.004399 0.020124 0.009449 +v -0.026075 -0.008101 -0.059845 +v 0.018066 0.023834 -0.053474 +v -0.020766 -0.004954 -0.077628 +v -0.016271 -0.012833 0.038712 +v -0.008565 -0.019126 0.041414 +v 0.016318 -0.023457 -0.021025 +v 0.022270 0.010099 0.025276 +v -0.003290 0.020341 0.062612 +v -0.022477 -0.009722 0.013621 +v -0.015658 -0.021701 -0.063985 +v -0.009052 0.026678 -0.043996 +v 0.019472 0.012314 0.011190 +v -0.010958 -0.018181 0.032380 +v 0.023052 0.001725 0.017960 +v -0.023194 0.004528 -0.069844 +v -0.019191 -0.010652 0.051274 +v -0.001665 -0.029541 -0.040297 +v 0.000238 -0.028963 -0.029941 +v 0.014862 -0.016996 0.025886 +v -0.015394 -0.020620 0.004906 +v -0.012701 -0.016769 0.037583 +v 0.013139 0.015981 0.011299 +v -0.016595 0.022762 -0.048299 +v 0.022025 0.001981 0.031707 +v 0.016692 -0.022304 -0.011277 +v 0.007520 0.015413 -0.083541 +v 0.017114 0.022613 -0.031527 +v -0.004406 -0.028326 -0.060169 +v 0.023626 -0.016344 -0.022416 +v -0.010706 -0.024381 -0.004794 +v -0.017323 -0.024050 -0.054908 +v 0.022536 0.002487 0.023294 +v -0.023553 -0.005756 -0.068885 +v -0.022900 -0.004763 0.026875 +v -0.022849 0.013898 -0.026231 +v 0.021950 -0.016603 -0.007231 +v -0.012847 0.022237 -0.063540 +v -0.004519 -0.021655 0.056910 +v -0.023492 -0.002253 0.022079 +v -0.027768 -0.004531 -0.041632 +v -0.026399 0.004582 -0.027546 +v 0.008108 0.026837 -0.058950 +v 0.000683 -0.027310 -0.011337 +v 0.016327 0.015083 0.021991 +v 0.005117 -0.029404 -0.057667 +v 0.011173 -0.022722 0.019269 +v -0.007973 0.025546 -0.024763 +v 0.025822 0.009915 -0.014747 +v 0.012070 -0.003245 0.016273 +v 0.010280 0.026688 -0.039048 +v 0.003336 -0.020154 0.053209 +v 0.010444 0.021319 0.026253 +v 0.024005 -0.011221 0.006365 +v 0.027283 0.009407 -0.028898 +v -0.003756 0.027319 -0.034142 +v -0.015556 -0.019604 0.013860 +v -0.005328 -0.023192 0.035793 +v -0.004182 0.023107 0.024047 +v 0.007676 0.007229 0.013627 +v 0.025058 0.009679 -0.004490 +v -0.002080 0.026229 -0.016879 +v -0.018630 0.016128 0.002550 +v 0.012944 0.021613 -0.068807 +v 0.019533 -0.008870 0.016924 +v 0.010244 0.020734 0.004892 +v 0.018080 -0.023740 -0.036876 +v -0.023505 0.015320 -0.046291 +v 0.025144 0.004704 0.014554 +v 0.002951 -0.026170 0.004282 +v -0.021496 -0.016957 -0.025027 +v 0.020107 0.016878 -0.067005 +v 0.021869 0.005190 0.053007 +v 0.022076 -0.019004 -0.027591 +v 0.014955 0.015021 0.037507 +v 0.011507 -0.025268 -0.064811 +v -0.023950 0.008660 -0.008350 +v 0.013989 0.025775 -0.047139 +v -0.028509 -0.000913 -0.050767 +v -0.005605 0.020277 0.028166 +v 0.023186 -0.013669 0.000717 +v 0.022303 -0.003889 -0.080994 +v -0.011227 -0.024487 -0.064284 +v 0.020672 -0.020170 -0.061877 +v 0.010387 -0.021826 -0.075973 +v -0.006623 0.019323 0.010136 +v 0.027369 -0.002150 -0.008564 +v 0.007411 0.019965 0.033275 +v 0.022726 0.010873 0.016320 +v 0.029053 0.009510 -0.049673 +v 0.011724 0.005799 -0.083234 +v -0.024598 0.008733 -0.017427 +v -0.010515 0.014490 0.011211 +v -0.004481 0.021505 -0.075696 +v -0.016517 0.012355 0.026012 +v 0.000934 -0.023393 -0.077170 +v -0.026770 0.001713 -0.060339 +v -0.020405 0.003496 0.035712 +v -0.020663 0.012100 0.013010 +v 0.028942 -0.011176 -0.054843 +v 0.026551 -0.004289 0.000183 +v 0.022222 0.015154 -0.007499 +v 0.019524 0.014242 -0.073729 +v -0.009237 -0.023289 0.017234 +v -0.013966 0.005476 0.014531 +v 0.013776 -0.014881 0.058530 +v 0.009358 0.020671 0.011324 +v 0.014599 0.017130 0.017946 +v 0.008631 -0.025654 -0.004156 +v -0.026231 0.007260 -0.033580 +v -0.025331 -0.001241 -0.004824 +v -0.025896 0.000575 -0.013646 +v 0.004375 0.023717 0.018146 +v -0.024510 0.000363 0.009658 +v 0.016802 -0.021159 -0.000796 +v -0.020131 -0.011201 0.035113 +v 0.018839 -0.019985 -0.005743 +v 0.008535 -0.023401 0.024865 +v -0.005666 -0.008710 -0.083227 +v -0.017102 0.011419 0.032644 +v -0.015235 0.021982 -0.025552 +v -0.020099 0.016913 -0.021794 +v 0.013816 0.016933 0.027525 +v -0.009906 -0.023436 -0.068968 +v 0.017886 -0.017851 0.021798 +v -0.015237 0.020231 -0.005190 +v 0.010957 0.018071 0.036636 +v -0.015684 -0.011943 0.013724 +v -0.003819 -0.022464 0.049056 +v -0.007504 -0.023192 0.026895 +v -0.004911 -0.027588 -0.019512 +v 0.003063 -0.023348 0.040771 +v 0.019208 -0.014646 0.036423 +v -0.021219 -0.019451 -0.042734 +v 0.019275 0.012523 0.042794 +v -0.010481 0.021860 -0.068181 +v -0.013394 -0.005356 0.016950 +v -0.010260 0.013836 -0.083249 +v 0.003002 -0.027610 -0.015442 +v 0.006994 -0.024645 0.015895 +v -0.025778 -0.007188 -0.020286 +v 0.029836 -0.003681 -0.037988 +v 0.019170 0.011295 0.052662 +v 0.025144 0.016718 -0.049709 +v -0.003153 -0.023755 -0.074863 +v 0.030292 0.001454 -0.044308 +v 0.021465 -0.018498 -0.017163 +v 0.018991 -0.019717 -0.066589 +v -0.024742 0.002502 0.002845 +v 0.020988 -0.022828 -0.054854 +v 0.024949 0.007643 0.006617 +v -0.001945 0.021836 0.046323 +v -0.001454 -0.023289 0.042605 +v 0.019006 -0.000191 0.012496 +v 0.010134 -0.022010 0.032498 +v 0.002268 0.027065 -0.022771 +v -0.006058 -0.011939 0.020529 +v -0.017848 0.016722 -0.066878 +v -0.026458 0.000769 -0.021753 +v 0.006976 -0.027866 -0.025414 +v 0.005659 0.027672 -0.036504 +v -0.010036 -0.015787 -0.083414 +v 0.022771 -0.013968 -0.068893 +v 0.017331 0.022822 -0.036772 +v -0.013933 0.016607 0.018537 +v 0.014677 0.016614 0.050513 +v 0.024572 -0.019312 -0.053049 +v 0.013236 -0.010557 -0.083246 +v 0.018028 0.011977 -0.081296 +v -0.023951 -0.016515 -0.055090 +v 0.022742 0.016913 -0.025792 +v -0.014578 0.012513 -0.081394 +v -0.012063 -0.020159 -0.074498 +v 0.030349 -0.005407 -0.047790 +v 0.010088 -0.012620 0.020723 +v -0.017561 -0.018356 -0.067705 +v 0.015104 0.021505 -0.004039 +v 0.000395 0.020054 0.025597 +v 0.013053 0.016515 0.045649 +v -0.021404 0.009140 -0.070825 +v -0.020661 0.015261 -0.063088 +v -0.015185 0.022205 -0.059619 +v 0.002983 -0.030078 -0.045170 +v 0.004313 -0.025039 -0.071575 +v 0.013144 -0.007934 0.018055 +v 0.011947 -0.020544 0.040355 +v -0.011976 0.025687 -0.047506 +v -0.013050 0.016680 0.027210 +v 0.003357 0.023377 -0.071800 +v -0.017744 0.003954 0.010411 +v 0.016313 0.019894 0.004100 +v -0.011139 0.022552 -0.002913 +v -0.025748 -0.005371 -0.014854 +v 0.013938 -0.017168 0.034641 +v -0.016419 0.009303 0.059325 +v -0.001515 0.025262 -0.000757 +v 0.023444 -0.001549 0.042049 +v 0.015938 -0.013233 0.051453 +v -0.020201 -0.016382 -0.003451 +v -0.004037 -0.025347 0.011834 +v -0.023882 -0.013538 -0.027296 +v 0.023418 -0.006246 0.034067 +v 0.003534 0.017512 -0.083409 +v 0.009807 0.025411 -0.021903 +v 0.026656 0.001902 0.000583 +v -0.014674 0.016218 -0.074709 +v -0.001063 0.013984 -0.083299 +v -0.021267 0.014755 -0.015783 +v 0.018767 -0.007544 0.056626 +v -0.022071 0.002416 0.041349 +v 0.007427 -0.004510 -0.083156 +v -0.000413 0.013654 0.015249 +v -0.002893 0.020260 0.037336 +v -0.013949 -0.014612 0.047298 +v -0.016275 -0.023785 -0.038240 +v -0.020552 -0.003629 0.030469 +v 0.010549 -0.017405 0.056670 +v 0.021551 -0.021670 -0.045355 +v 0.023090 0.004208 0.041363 +v 0.012669 0.020848 0.019400 +v -0.004481 0.024263 0.007058 +v 0.018662 -0.013488 0.021816 +v 0.000317 0.021051 0.031831 +v 0.024682 0.014794 -0.029437 +v -0.020257 -0.019538 -0.033904 +v -0.005996 0.010349 -0.083236 +v -0.007645 -0.019742 0.019320 +v -0.016476 0.021444 -0.030289 +v -0.007401 -0.020993 -0.078978 +v -0.025959 0.003104 -0.017258 +v 0.017204 -0.016175 0.043419 +v -0.017133 0.018958 -0.008958 +v -0.010460 0.026423 -0.055198 +v 0.016891 -0.001340 -0.083311 +v 0.012961 -0.016339 0.050517 +v 0.020033 0.010716 0.046931 +v 0.001277 -0.024471 0.028558 +v -0.025550 0.012299 -0.054510 +v 0.019713 -0.003629 0.062876 +v -0.025037 -0.006291 -0.064321 +v 0.027981 0.006797 -0.060911 +v -0.021857 -0.011839 0.009443 +v 0.021883 -0.001605 0.035017 +v 0.005813 0.015697 0.011581 +v 0.022944 -0.002921 0.016546 +v -0.021074 -0.000053 0.006879 +v 0.001399 -0.021433 0.062761 +v 0.026681 -0.009544 -0.016804 +v 0.005282 0.025895 -0.013689 +v 0.021515 0.005110 -0.081151 +v -0.011235 -0.016556 0.052417 +v -0.014363 0.023667 -0.039008 +v -0.013665 0.017521 0.037667 +v 0.020757 -0.002006 0.048279 +v 0.016931 0.022357 -0.026853 +v -0.016544 -0.015293 0.005861 +v -0.012447 -0.025995 -0.034896 +v -0.018279 -0.021241 -0.059889 +v 0.002070 0.019453 0.058389 +v 0.023097 -0.015863 -0.013423 +v 0.020080 0.021461 -0.057061 +v 0.004552 0.027249 -0.028673 +v -0.018384 -0.012945 -0.075563 +v -0.020800 0.006498 0.015790 +v -0.015094 0.016732 0.033680 +v -0.009019 -0.026718 -0.060779 +v -0.018406 -0.008324 0.043405 +v -0.021050 -0.020488 -0.051234 +v -0.004991 0.023312 0.018999 +v 0.020658 0.007823 0.028578 +v -0.018995 -0.002324 0.055866 +v 0.016246 -0.018527 -0.075137 +v -0.017789 -0.020585 -0.017689 +v 0.003694 0.005670 0.014699 +v 0.029173 -0.003591 -0.030823 +v 0.024862 0.000171 -0.073746 +v 0.010315 -0.028985 -0.050203 +v 0.018745 0.020092 -0.018672 +v 0.022108 -0.008955 0.040011 +v -0.019609 -0.004478 0.021982 +v 0.019592 0.021925 -0.043796 +v -0.016356 -0.024707 -0.047292 +v 0.026781 0.009172 -0.022257 +v -0.017847 0.010823 0.021382 +v -0.025015 -0.001050 0.000486 +v 0.010769 -0.023897 0.008255 +v 0.002590 0.007420 -0.083141 +v 0.009172 0.027903 -0.054240 +v -0.024362 0.010454 -0.023498 +v 0.020122 -0.001746 0.055243 +v 0.019620 -0.010563 0.059668 +v 0.008595 0.011057 -0.083250 +v 0.022183 0.005132 0.048421 +v -0.009057 0.007036 0.015403 +v 0.026983 0.003789 -0.066049 +v 0.007219 -0.028524 -0.033783 +v 0.026777 -0.015551 -0.048363 +v 0.019119 0.018887 -0.011550 +v -0.003688 -0.027052 -0.009759 +v 0.007681 -0.001736 0.016239 +v -0.024405 0.013052 -0.040347 +v -0.004491 -0.015068 0.022958 +v 0.019921 0.013071 0.031691 +v 0.017645 0.003639 -0.083511 +v 0.021565 0.007398 0.014229 +v 0.029144 -0.010764 -0.050431 +v -0.002969 0.025701 -0.010384 +v 0.009493 0.018527 0.041045 +v -0.014273 0.015938 0.009229 +v -0.006000 0.028194 -0.053455 +v -0.026409 -0.006825 -0.027648 +v 0.002916 0.025006 0.002175 +v -0.006490 -0.020624 0.031231 +v -0.006235 -0.019270 0.052018 +v -0.024176 0.000633 0.013837 +v -0.022842 -0.017786 -0.046373 +v 0.004565 -0.024353 0.025950 +v -0.027332 -0.008251 -0.055843 +v 0.010655 0.026882 -0.043222 +v -0.006838 -0.005900 0.017984 +v -0.018717 0.001348 0.059704 +v 0.024729 0.000280 0.026231 +v -0.022633 -0.013258 -0.009523 +v 0.012076 -0.027687 -0.041660 +v 0.001956 0.000071 0.015565 +v 0.014155 -0.021314 0.016700 +v -0.020094 0.014780 -0.002111 +v -0.002126 0.017121 0.016821 +v -0.017671 0.009675 0.016887 +v 0.003118 0.023301 0.026256 +v 0.022196 0.010540 -0.073329 +v 0.004224 0.022644 0.033439 +v 0.001644 0.019989 0.017768 +v -0.018109 0.021332 -0.056109 +v 0.020351 0.016263 0.001781 +v 0.026146 -0.001400 0.008569 +v -0.019125 0.009676 0.050934 +v -0.019780 0.015991 -0.010178 +v -0.025516 -0.013445 -0.047018 +v 0.013793 0.006729 0.012117 +v -0.010289 -0.019311 0.022754 +v 0.020157 0.013927 0.023210 +v -0.010414 0.018762 -0.076348 +v 0.022086 0.013337 0.007597 +v -0.004587 -0.029821 -0.050381 +v -0.017169 -0.014947 0.042158 +v 0.001659 0.021342 0.054535 +v 0.023546 0.004471 0.034644 +v -0.015175 0.020870 -0.012239 +v -0.024171 0.007156 -0.003907 +v -0.011241 -0.019896 0.044904 +v -0.025134 -0.005943 -0.006875 +v 0.014912 -0.024865 -0.061178 +v 0.029526 0.004272 -0.058032 +v 0.029086 0.005698 -0.037598 +v -0.019032 -0.009371 0.011202 +v 0.015815 -0.021494 -0.068523 +v -0.004972 0.020910 0.051201 +v 0.007491 0.019880 0.058647 +v 0.005227 -0.030139 -0.048621 +v -0.024340 0.009335 -0.062051 +v -0.019612 -0.005622 0.039950 +v -0.012220 -0.021997 0.013697 +v 0.003686 0.022237 0.040478 +v -0.021971 0.012813 -0.008073 +v -0.017149 -0.017674 0.017480 +v 0.006211 0.028286 -0.046475 +v 0.022347 -0.004782 0.020988 +v -0.010451 0.016112 0.058850 +v 0.019121 0.009030 0.039873 +v 0.006669 0.021410 -0.076083 +v 0.027565 -0.001516 -0.065290 +v -0.001567 0.027758 -0.058376 +v -0.012955 -0.023591 -0.009643 +v 0.025766 -0.012881 -0.022067 +v -0.005193 0.024472 0.001233 +v 0.015427 0.014267 0.041489 +v -0.004142 -0.028447 -0.030703 +v 0.019851 -0.006969 0.047565 +v 0.006948 -0.019653 0.025132 +v 0.030994 -0.002229 -0.053032 +v 0.020539 -0.006146 0.042518 +v -0.020709 -0.014408 -0.067383 +v 0.009695 0.023939 -0.066190 +v -0.000633 -0.025166 0.019301 +v 0.007276 -0.018665 0.059441 +v 0.029032 0.001047 -0.027623 +v -0.010899 0.018125 0.054854 +v 0.006014 -0.020304 0.037875 +v -0.020762 -0.000766 -0.078779 +v -0.028175 -0.004420 -0.047674 +v -0.000512 -0.023943 0.035433 +v -0.021332 -0.011215 -0.070092 +v 0.028471 0.005381 -0.029582 +v -0.019307 0.011316 0.036212 +v 0.013526 0.014567 0.057777 +v -0.009017 -0.025942 -0.015035 +v 0.014754 0.013192 0.062894 +v 0.000320 0.024329 0.012552 +v 0.028696 -0.008639 -0.058309 +v -0.004206 0.027870 -0.042376 +v 0.007308 0.023812 0.009342 +v -0.021631 0.001743 0.020153 +v 0.009001 -0.019235 0.045504 +v -0.006588 -0.022435 0.040274 +v -0.020454 0.010247 0.029503 +v -0.016572 0.012774 0.057306 +v 0.008142 0.020139 0.052802 +v -0.010125 0.017629 0.046332 +v -0.023836 -0.001026 0.018268 +v 0.002182 0.028563 -0.056266 +v -0.013219 0.019290 0.021948 +v 0.018323 -0.025026 -0.052846 +o kp.001 +v -0.001000 -0.001000 -0.083000 +v -0.001000 0.001000 -0.083000 +v -0.001000 -0.001000 -0.085000 +v -0.001000 0.001000 -0.085000 +v 0.001000 -0.001000 -0.083000 +v 0.001000 0.001000 -0.083000 +v 0.001000 -0.001000 -0.085000 +v 0.001000 0.001000 -0.085000 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/heart_0.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/heart_0.obj new file mode 100644 index 0000000000000000000000000000000000000000..2f205ca40df546a2af38de9ccc85bf76298f3758 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/heart_0.obj @@ -0,0 +1,1037 @@ +o kp.000 +v 0.003669 0.021132 -0.000452 +v 0.003669 0.022132 -0.000452 +v 0.003669 0.022132 -0.001452 +v 0.003669 0.021132 -0.001452 +v 0.004669 0.022132 -0.001452 +v 0.004669 0.021132 -0.001452 +v 0.004669 0.022132 -0.000452 +v 0.004669 0.021132 -0.000452 +o kp.001 +v -0.008208 -0.032892 -0.000217 +v -0.008208 -0.031892 -0.000217 +v -0.008208 -0.031892 -0.001217 +v -0.008208 -0.032892 -0.001217 +v -0.007208 -0.031892 -0.001217 +v -0.007208 -0.032892 -0.001217 +v -0.007208 -0.031892 -0.000217 +v -0.007208 -0.032892 -0.000217 +o kp.002 +v 0.033755 -0.001247 0.001308 +v 0.033755 -0.000247 0.001308 +v 0.033755 -0.000247 0.000308 +v 0.033755 -0.001247 0.000308 +v 0.034755 -0.000247 0.000308 +v 0.034755 -0.001247 0.000308 +v 0.034755 -0.000247 0.001308 +v 0.034755 -0.001247 0.001308 +o kp.003 +v -0.032151 0.012409 -0.000351 +v -0.032151 0.013409 -0.000351 +v -0.032151 0.013409 -0.001351 +v -0.032151 0.012409 -0.001351 +v -0.031151 0.013409 -0.001351 +v -0.031151 0.012409 -0.001351 +v -0.031151 0.013409 -0.000351 +v -0.031151 0.012409 -0.000351 +o mesh +v 0.005274 0.010590 0.014856 +v -0.006774 -0.030961 -0.014161 +v -0.029565 0.008676 -0.014471 +v 0.028630 -0.008308 -0.014190 +v -0.022818 -0.013461 0.014496 +v 0.013243 -0.023824 0.013980 +v 0.014518 0.020819 -0.014313 +v -0.024332 0.023649 0.013578 +v 0.034031 0.003262 0.012716 +v -0.002226 -0.002338 -0.015207 +v -0.011431 0.028582 -0.010195 +v -0.024261 -0.014469 -0.009480 +v -0.008759 -0.031987 0.009455 +v 0.013730 -0.024738 -0.008338 +v 0.022458 0.021032 0.006083 +v -0.031522 0.004946 0.006756 +v 0.032444 0.011512 -0.009445 +v -0.001657 -0.008732 0.014744 +v -0.004758 0.027174 0.009807 +v 0.027679 -0.013512 0.005144 +v -0.013613 0.006121 0.014823 +v 0.016658 -0.003043 0.014643 +v -0.026549 0.022172 -0.003811 +v 0.014441 0.002777 -0.015218 +v -0.002312 0.014799 -0.015232 +v 0.007285 0.021453 0.000262 +v -0.015798 -0.025676 -0.002755 +v -0.017692 -0.001852 -0.015318 +v 0.001905 -0.018507 -0.015379 +v 0.004360 -0.029926 0.002550 +v 0.033651 -0.001641 -0.001794 +v -0.016656 0.016080 -0.015269 +v 0.015295 -0.012510 -0.015337 +v -0.011769 -0.015656 -0.015491 +v -0.029901 -0.002264 -0.006086 +v 0.021364 0.009893 0.014701 +v -0.016258 0.028383 0.002400 +v -0.000802 -0.022130 0.014567 +v 0.031985 0.012635 0.004191 +v 0.011656 0.021579 0.013446 +v 0.023614 -0.017194 -0.006423 +v 0.024328 0.020443 -0.006286 +v -0.028325 -0.007048 0.005373 +v -0.012192 0.018628 0.014903 +v -0.023967 -0.000550 0.014761 +v -0.013742 -0.022133 0.014591 +v -0.023219 -0.017764 0.002945 +v 0.018425 -0.022282 0.003280 +v -0.000217 0.024661 -0.008776 +v -0.025297 0.011235 0.014924 +v -0.006026 -0.032949 -0.002580 +v 0.009754 -0.012645 0.014614 +v 0.026375 0.003072 -0.015339 +v -0.031421 0.010987 -0.003115 +v 0.028505 -0.006836 0.014537 +v -0.013435 -0.005282 0.014737 +v 0.021461 -0.015936 0.014415 +v 0.003609 -0.029890 -0.009052 +v 0.023247 0.013972 -0.015484 +v -0.029722 0.017022 0.006451 +v -0.009935 0.007019 -0.015193 +v -0.002353 0.002938 0.014823 +v 0.004159 0.006318 -0.015188 +v -0.026953 0.018865 -0.013816 +v -0.005919 0.027959 -0.000590 +v 0.001093 0.020055 0.014749 +v -0.014809 0.028331 0.012931 +v 0.007281 -0.006195 -0.015227 +v 0.028381 0.016757 0.013047 +v -0.014847 -0.024675 -0.012793 +v 0.007173 0.000238 0.014926 +v -0.021159 0.026167 -0.010812 +v 0.000785 -0.031081 0.011524 +v -0.026453 -0.005610 -0.014342 +v 0.015289 0.022877 -0.004761 +v 0.029744 -0.010478 -0.004210 +v -0.005881 0.011743 0.014849 +v 0.011583 0.011887 -0.015256 +v 0.033959 0.002355 -0.010119 +v -0.020047 0.007499 -0.015290 +v -0.008333 0.021688 -0.015452 +v 0.032454 -0.005818 0.006315 +v -0.016022 -0.025554 0.006277 +v -0.008183 -0.014974 0.014659 +v 0.005293 0.019283 -0.013446 +v 0.024620 0.001180 0.014613 +v 0.020286 -0.003921 -0.015261 +v 0.010527 -0.020545 -0.015545 +v -0.024155 0.024339 0.004375 +v -0.003589 -0.011017 -0.015293 +v 0.020253 0.019493 0.014679 +v -0.018702 -0.010358 -0.015513 +v 0.013426 0.006731 0.014751 +v -0.026554 -0.010702 -0.002185 +v 0.001628 0.022575 0.006594 +v 0.014262 0.022917 0.004953 +v -0.006834 -0.022611 -0.015529 +v 0.034034 0.006777 -0.001649 +v 0.011201 -0.026196 0.006187 +v -0.010571 -0.005867 -0.015294 +v 0.023062 -0.014896 -0.014192 +v -0.020532 -0.019778 0.010269 +v -0.029810 0.004777 0.014468 +v -0.019181 -0.018246 -0.014719 +v -0.020725 -0.019928 -0.004870 +v -0.000251 -0.026851 -0.015515 +v 0.027533 0.018224 0.000969 +v 0.034140 0.001743 0.005162 +v -0.017372 0.012815 0.014837 +v -0.011230 -0.029881 0.002140 +v -0.011020 -0.030156 -0.007871 +v 0.006441 -0.019768 0.014564 +v -0.031644 0.004948 -0.007747 +v -0.027602 -0.007026 0.013252 +v 0.030282 0.009619 0.014684 +v -0.031472 0.003110 -0.000499 +v -0.002606 -0.032326 0.004989 +v 0.013647 0.014169 0.014809 +v 0.006673 -0.027341 0.014097 +v -0.015709 0.023818 -0.015288 +v 0.009198 -0.027534 -0.002534 +v -0.025615 0.001664 -0.015391 +v -0.006070 -0.027393 0.014552 +v 0.018442 -0.020138 -0.011955 +v -0.015530 -0.013621 0.014654 +v 0.032515 -0.004875 -0.009141 +v -0.020876 0.026535 -0.003024 +v -0.002962 0.005309 -0.015193 +v 0.022589 -0.017935 0.007649 +v 0.000751 0.023969 -0.001101 +v 0.007715 0.021391 -0.007080 +v -0.028529 0.017909 0.013790 +v 0.017209 -0.010236 0.014605 +v -0.030171 0.015837 -0.008243 +v -0.031165 0.011549 0.010918 +v 0.007860 -0.014039 -0.015316 +v 0.020543 0.007510 -0.015268 +v -0.006390 -0.003575 0.014770 +v -0.005874 0.021591 0.014963 +v 0.028078 0.017048 -0.011093 +v 0.021371 0.020411 -0.013093 +v 0.007627 -0.026515 -0.013575 +v -0.010084 0.028750 0.005423 +v 0.031034 0.014136 -0.003202 +v 0.027560 -0.013061 0.011964 +v 0.023227 -0.017922 0.000886 +v 0.029306 0.009706 -0.015182 +v -0.010108 0.014353 -0.015199 +v -0.029837 -0.001858 0.009491 +v -0.002781 -0.032169 -0.008853 +v 0.005648 -0.007299 0.014707 +v -0.020895 0.006133 0.014793 +v -0.025102 -0.012706 0.007043 +v 0.008188 0.021217 0.007181 +v -0.013868 0.028755 -0.003973 +v -0.018506 0.020734 0.014977 +v -0.001442 0.021384 -0.015049 +v -0.008390 0.000560 -0.015209 +v 0.018852 -0.021326 -0.004387 +v 0.002668 -0.013736 0.014640 +v 0.019488 0.022447 0.000292 +v -0.020053 0.026827 0.008876 +v 0.030543 -0.002057 -0.014865 +v -0.029560 0.017314 -0.000616 +v 0.004710 0.013071 -0.015224 +v -0.005590 0.026472 -0.012049 +v 0.008453 0.000175 -0.015182 +v 0.007142 0.016790 0.014861 +v -0.019652 -0.007030 0.014732 +v 0.001056 -0.002542 0.014792 +v -0.023543 0.013633 -0.015414 +v -0.031396 0.011388 0.003808 +v 0.017874 -0.021825 0.010021 +v 0.014036 -0.005353 -0.015237 +v 0.033880 0.007659 0.008075 +v -0.012296 -0.028469 0.013693 +v -0.017497 0.000792 0.014799 +v -0.029731 -0.003291 0.000543 +v -0.027321 -0.008603 -0.008034 +v 0.033120 -0.003498 0.012031 +v -0.019096 -0.022212 0.001721 +v 0.014590 -0.016471 0.014531 +v -0.008811 0.027032 0.014413 +v 0.027781 -0.012623 -0.009919 +v 0.002908 -0.010472 -0.015277 +v -0.007636 -0.021045 0.014595 +v 0.022540 -0.005618 0.014574 +v -0.021404 0.021716 -0.015188 +v 0.000104 -0.031331 -0.003583 +v -0.008419 0.003009 0.014816 +v 0.000089 0.013655 0.014864 +v -0.004386 -0.017135 -0.015383 +v -0.002202 0.026479 0.004162 +v 0.014167 -0.024820 0.000056 +v 0.027620 0.017853 0.006852 +v 0.031897 -0.007120 0.000612 +v 0.017528 0.015310 -0.015404 +v 0.019375 0.003662 0.014673 +v -0.014148 0.003038 -0.015239 +v -0.029697 -0.000205 -0.011745 +v 0.017927 0.022203 0.009472 +v -0.004642 0.027381 -0.006177 +v 0.003899 0.004958 0.014868 +v 0.022741 -0.009311 -0.015488 +v 0.011309 -0.006402 0.014715 +v -0.017465 -0.023703 -0.007853 +v -0.022479 0.016705 0.014954 +v -0.024415 -0.010858 -0.013830 +v -0.031437 0.010340 -0.009460 +v 0.005875 -0.028943 0.007850 +v -0.025878 0.022839 -0.010031 +v -0.026953 0.021487 0.009198 +v -0.015234 0.010222 -0.015230 +v 0.031895 0.012526 0.009766 +v -0.011879 0.013126 0.014849 +v 0.031738 0.004648 -0.014566 +v 0.020318 0.002044 -0.015282 +v 0.010152 0.017611 -0.015263 +v -0.003014 -0.016605 0.014609 +v -0.000734 0.024701 0.012461 +v 0.012876 0.000788 0.014705 +v -0.001540 0.008526 0.014857 +v -0.004780 -0.032414 0.013115 +v -0.019442 0.026018 0.014334 +v 0.002413 0.000348 -0.015170 +v -0.010478 -0.026606 -0.015209 +v 0.008778 -0.027563 -0.008508 +v 0.023511 0.015337 0.014772 +v -0.017674 -0.018608 0.014577 +v -0.023975 -0.015236 -0.002987 +v -0.011862 -0.021018 -0.015628 +v 0.000379 0.009995 -0.015206 +v 0.033992 0.006771 -0.007243 +v 0.027101 -0.013952 -0.001260 +v 0.018008 0.022558 -0.009242 +v 0.004956 0.020390 0.011224 +v -0.008631 -0.009765 0.014712 +v 0.028629 0.004508 0.014686 +v 0.024775 0.019781 0.010764 +v 0.010387 0.006044 -0.015191 +v -0.030986 0.000180 0.004748 +v -0.017102 0.028081 -0.007949 +v 0.029932 -0.010191 0.008385 +v -0.005654 0.009855 -0.015178 +v 0.025561 -0.004393 -0.015452 +v 0.005378 -0.022389 -0.015619 +v -0.029342 0.014244 -0.013038 +v 0.012574 0.022553 -0.009916 +v -0.015165 0.028392 0.007839 +v -0.029123 -0.000411 0.014331 +v -0.010911 0.026264 -0.014708 +v -0.012021 -0.029527 -0.002912 +v -0.027652 0.020775 0.003444 +v 0.023032 -0.010664 0.014507 +v -0.017241 -0.023662 0.011286 +v 0.002841 0.021910 -0.005195 +v 0.034156 0.002438 -0.004699 +v 0.029776 -0.000820 0.014634 +v -0.021489 -0.018691 -0.009666 +v -0.007377 -0.032780 0.003486 +v 0.014306 -0.022774 -0.013142 +v 0.010963 -0.009571 -0.015210 +v 0.012087 0.022792 -0.000928 +v 0.015583 0.007939 -0.015255 +v -0.012587 -0.028806 0.007812 +v -0.021652 -0.006093 -0.015543 +v -0.020296 0.002539 -0.015331 +v -0.004359 0.016457 0.015010 +v -0.025311 -0.013275 0.001863 +v -0.008495 -0.011300 -0.015323 +v 0.034008 0.006625 0.003273 +v 0.014975 -0.018472 -0.015430 +v 0.000955 -0.027211 0.014536 +v -0.013721 -0.011172 -0.015414 +v -0.012438 0.000224 0.014787 +v 0.015420 0.018719 0.014829 +v 0.008559 0.006913 0.014891 +v 0.004566 -0.029695 -0.002607 +v -0.012827 0.019056 -0.015256 +v -0.014402 0.023941 0.014919 +v 0.028075 0.017576 -0.004806 +v -0.025454 0.006459 -0.015516 +v 0.018240 -0.019683 0.014285 +v -0.011137 0.028910 0.000765 +v -0.009129 0.028570 -0.005057 +v 0.032352 -0.005661 -0.004434 +v 0.001357 -0.005477 -0.015230 +v -0.004973 -0.006204 -0.015249 +v -0.023202 -0.015838 0.010043 +v -0.028370 -0.006511 -0.003305 +v 0.024193 0.006053 0.014639 +v -0.015596 -0.006845 -0.015359 +v -0.030438 0.004383 -0.012317 +v 0.000081 -0.030162 -0.012221 +v -0.028896 -0.004857 -0.010426 +v 0.001490 -0.030761 0.006580 +v -0.023648 0.024789 -0.006429 +v -0.009959 0.028426 0.010114 +v 0.010821 -0.026480 0.011011 +v -0.014655 -0.026586 0.001668 +v -0.007570 -0.032572 -0.009868 +v 0.015340 -0.023587 0.006539 +v 0.018289 0.014256 0.014821 +v 0.024099 0.020736 -0.000784 +v 0.027780 0.014249 -0.014820 +v 0.009934 0.011287 0.014812 +v -0.025961 -0.010975 0.011598 +v -0.031697 0.008100 0.000425 +v -0.024408 0.024106 -0.000181 +v 0.018078 -0.007919 -0.015348 +v -0.021371 -0.014256 -0.014880 +v -0.002304 -0.021179 -0.015421 +v -0.031519 0.007016 0.010876 +v 0.001776 0.021689 -0.011577 +v 0.033479 -0.002864 0.003027 +v 0.019957 0.022260 -0.004217 +v -0.012552 -0.017759 0.014637 +v -0.024935 0.004104 0.014788 +v 0.033069 0.010331 -0.004464 +v 0.001733 -0.018419 0.014575 +v -0.008245 0.007497 0.014837 +v -0.016729 0.027085 -0.012311 +v 0.029719 -0.010857 0.001812 +v 0.003553 -0.023199 0.014556 +v -0.020108 -0.020792 0.005850 +v -0.020359 0.026832 0.004411 +v 0.000189 -0.031408 0.000889 +v 0.030613 -0.008874 -0.008530 +v 0.002939 0.022096 0.002301 +v -0.014358 -0.027212 -0.007785 +v 0.025324 0.007397 -0.015324 +v -0.028321 0.019828 -0.007620 +v -0.029478 0.013587 0.014487 +v -0.016833 -0.014584 -0.015592 +v 0.032944 0.007602 -0.011474 +v -0.018498 -0.021594 -0.011612 +v 0.034181 0.002590 -0.000210 +v 0.016194 -0.001282 -0.015125 +v 0.032647 0.011288 -0.000170 +v 0.033933 0.000051 0.009234 +v 0.011274 -0.019919 0.014536 +v -0.030997 0.002268 0.011051 +v -0.004634 -0.026496 -0.015668 +v 0.022142 -0.017985 -0.010941 +v 0.012178 0.022218 0.009126 +v -0.029899 0.009161 0.014574 +v 0.009016 -0.027832 0.001835 +v -0.023547 -0.004861 0.014735 +v -0.021058 0.017176 -0.015386 +v 0.001001 0.017821 -0.015196 +v -0.013426 -0.009599 0.014733 +v 0.024825 0.017799 -0.014261 +v 0.008669 -0.023538 0.014517 +v 0.000132 -0.013761 -0.015326 +v 0.008658 0.020859 -0.011282 +v 0.019255 -0.016649 -0.015146 +v 0.024677 -0.016103 0.011024 +v 0.016320 0.010455 0.014734 +v -0.022194 -0.001279 -0.015459 +v 0.026771 -0.014070 -0.005500 +v -0.005829 0.017180 -0.015181 +v 0.026210 -0.011787 -0.013970 +v -0.028114 -0.007570 0.001174 +v -0.004683 0.026193 0.013987 +v -0.009020 -0.031122 0.013926 +v 0.018807 0.022659 0.004728 +v 0.033647 0.007462 0.012815 +v 0.018527 0.011199 -0.015310 +v -0.012013 -0.028047 -0.011571 +v -0.009996 -0.024523 0.014568 +v 0.025970 0.009855 0.014723 +v -0.004777 -0.012535 0.014735 +v -0.021597 -0.017508 0.013617 +v 0.021433 -0.019043 0.011638 +v -0.023610 0.024672 0.008667 +v -0.021236 -0.019434 -0.000524 +v 0.008041 0.009713 -0.015203 +v -0.003067 -0.032290 0.009114 +v -0.009923 0.022495 0.014927 +v 0.023628 -0.000726 -0.015348 +v -0.017600 -0.003349 0.014787 +v 0.003763 -0.027789 -0.014332 +v -0.030410 0.015130 -0.003999 +v 0.025109 0.019829 -0.010516 +v -0.002302 0.026341 -0.002488 +v -0.031778 0.007037 -0.004163 +v -0.023827 -0.008949 0.014666 +v 0.015491 -0.023795 -0.003683 +v 0.010719 0.022551 0.002937 +v -0.017532 0.008728 0.014826 +v -0.012104 -0.001148 -0.015248 +v 0.008087 -0.003891 0.014765 +v 0.033613 -0.001065 -0.007931 +v 0.011108 -0.025402 -0.011780 +v 0.031470 -0.007691 0.011195 +v 0.020337 -0.001321 0.014614 +v -0.008417 0.016572 0.014894 +v -0.028200 -0.006143 0.009327 +v -0.005916 0.028057 0.004528 +v -0.002130 0.024457 -0.012467 +v 0.030593 0.014684 -0.007798 +v -0.016069 -0.021470 -0.014872 +v -0.019801 0.012200 -0.015271 +v -0.001536 0.025365 0.007946 +v 0.001445 -0.023023 -0.015544 +v 0.015596 0.023002 0.001214 +v 0.024757 -0.016779 0.004536 +v 0.010955 -0.016509 -0.015446 +v -0.017918 0.016738 0.014862 +v -0.005384 0.000242 0.014810 +v 0.019232 -0.012702 -0.015537 +v 0.006668 -0.017796 -0.015398 +v 0.030355 0.014977 0.007101 +v 0.021442 -0.019914 0.004150 +v 0.018040 0.019310 -0.015148 +v -0.025627 -0.012222 -0.005674 +v -0.030480 0.015073 0.002450 +v -0.009230 -0.031716 -0.000715 +v 0.015844 0.022270 0.012774 +v -0.016983 0.028109 -0.001714 +v -0.007523 0.028183 -0.009125 +v 0.030421 0.013518 0.013795 +v 0.017015 -0.022562 -0.007593 +v -0.005109 0.023835 -0.015043 +v -0.008866 -0.032048 -0.005237 +v 0.030116 0.013803 -0.011740 +v 0.025024 -0.015424 -0.010460 +v 0.006093 -0.015560 0.014602 +v 0.012080 -0.001202 -0.015212 +v -0.031203 0.002293 -0.004956 +v -0.008548 -0.017814 -0.015476 +v 0.025428 0.019920 0.003746 +v 0.029908 0.015708 0.002699 +v 0.020331 -0.020434 0.000380 +v -0.003615 0.001498 -0.015182 +v -0.026982 0.011886 -0.015277 +v 0.011303 0.018002 0.014827 +v 0.030839 -0.005391 -0.012971 +v -0.003037 -0.030167 -0.014584 +v -0.019824 -0.011060 0.014685 +v -0.022822 -0.017029 -0.006265 +v 0.003829 0.021477 -0.001407 +v 0.017859 -0.014464 0.014517 +v -0.025001 0.019591 0.014867 +v 0.032517 -0.001846 -0.011586 +v -0.021716 0.009875 0.014846 +v 0.009534 0.022123 -0.003790 +v 0.002949 0.016711 0.014936 +v 0.034193 0.003851 0.008893 +v 0.006819 -0.010360 -0.015249 +v 0.000713 0.004281 -0.015181 +v 0.013395 -0.010146 0.014604 +v 0.004324 -0.029688 0.011774 +v -0.029606 -0.003234 0.005724 +v 0.008059 0.020381 0.013700 +v -0.031446 0.009854 0.007529 +v 0.024111 -0.016930 -0.002672 +v 0.007037 0.003693 -0.015201 +v 0.013723 0.016358 -0.015507 +v -0.004469 -0.023960 0.014562 +v -0.029704 0.016671 0.010221 +v 0.021872 0.021523 -0.008957 +v -0.023265 -0.015954 0.006267 +v 0.008383 0.013934 -0.015293 +v -0.027173 -0.001956 -0.014926 +v -0.002587 -0.005079 0.014772 +v 0.004828 0.020742 -0.009414 +v 0.011397 -0.026257 -0.005304 +v -0.019527 0.025252 -0.014063 +v -0.018413 -0.022765 -0.004057 +v 0.010702 0.003839 0.014778 +v -0.002122 -0.030092 0.014366 +v -0.018052 0.020060 -0.015383 +v 0.006623 -0.028673 -0.005665 +v 0.020866 -0.019591 -0.007200 +v 0.018075 0.007155 0.014704 +v -0.010035 -0.031245 0.005597 +v -0.014794 -0.025741 0.014080 +v -0.018952 -0.015070 0.014628 +v 0.026504 -0.002580 0.014586 +v -0.016570 0.006211 -0.015228 +v -0.027725 0.020638 -0.000253 +v -0.007036 -0.002883 -0.015242 +v 0.002031 -0.008031 0.014759 +v -0.020344 0.026837 -0.006661 +v -0.031771 0.007645 0.004072 +v 0.018139 -0.006683 0.014596 +v -0.028764 0.018998 -0.004077 +v -0.006804 0.003864 -0.015207 +v -0.009441 -0.005595 0.014757 +v 0.032249 0.001017 -0.013847 +v 0.017519 -0.022523 -0.000919 +v 0.025628 0.011197 -0.015505 +v 0.024802 -0.014223 0.014156 +v 0.021456 0.021378 0.009905 +v -0.024846 0.021818 -0.013426 +v -0.025961 -0.011099 -0.010540 +v -0.004113 -0.020130 0.014585 +v -0.031676 0.004047 0.003002 +v 0.027187 -0.010401 0.014392 +v 0.001632 0.022651 0.010208 +v 0.004691 0.020685 0.006376 +v 0.000434 -0.031123 -0.007165 +v -0.005820 -0.032923 0.006878 +v -0.003766 -0.032488 -0.005346 +v -0.027161 -0.003406 0.014685 +v -0.017478 0.005030 0.014836 +v 0.015162 0.003592 0.014709 +v 0.001186 0.002417 0.014819 +v -0.012030 -0.012888 0.014674 +v 0.005565 -0.003072 -0.015202 +v 0.006383 -0.010785 0.014674 +v -0.003485 -0.032565 0.001549 +v 0.031304 -0.008631 0.004091 +v -0.023931 0.010071 -0.015416 +v 0.024262 0.018961 0.014179 +v -0.030761 0.013905 0.007765 +v -0.031116 0.001556 -0.008586 +v 0.013836 -0.025435 0.003520 +v -0.029074 0.018046 -0.010773 +v -0.003133 0.026515 -0.009507 +v 0.019873 -0.020214 0.007597 +v -0.014942 -0.026216 0.010489 +v 0.017622 0.004315 -0.015250 +v -0.021149 0.001566 0.014769 +v 0.014361 -0.024297 0.010673 +v -0.021645 0.026120 0.000647 +v 0.021494 0.017445 -0.015308 +v -0.026784 -0.009260 0.008562 +v -0.005446 -0.008296 0.014754 +v -0.025251 0.007740 0.014852 +v 0.027642 -0.000219 -0.015496 +v 0.007430 0.021557 0.003790 +v -0.002565 0.022873 0.014804 +v -0.028336 0.004321 -0.015098 +v 0.000175 0.024650 0.002394 +v -0.013301 0.028998 0.004125 +v 0.005921 -0.028618 -0.011317 +v 0.004384 -0.013992 -0.015235 +v -0.014546 -0.017741 -0.015592 +v 0.025581 -0.015154 0.007488 +v -0.026742 -0.010742 0.004715 +v 0.008330 -0.027975 0.005442 +v 0.033054 -0.000029 0.013914 +v 0.009943 0.014733 0.014836 +v -0.017245 -0.022131 0.014373 +v -0.006873 0.013076 -0.015203 +v 0.031586 0.010638 -0.012662 +v 0.009598 -0.024052 -0.014952 +v -0.012159 0.023143 -0.015433 +v 0.012723 -0.002647 0.014680 +v -0.031106 0.012640 -0.006929 +v 0.002368 0.008759 0.014833 +v 0.009317 -0.003233 -0.015201 +v -0.025999 0.015870 0.014885 +v -0.031578 0.007062 -0.010437 +v -0.021918 -0.016277 -0.012053 +v 0.000884 0.013599 -0.015212 +v 0.014700 -0.006056 0.014660 +v 0.033584 -0.002132 0.006645 +v 0.017585 0.000674 0.014669 +v 0.027156 0.013636 0.014731 +v 0.016293 -0.022600 0.013122 +v -0.010455 0.003254 -0.015200 +v -0.001877 -0.000838 0.014815 +v 0.009194 0.021581 0.010605 +v -0.013493 0.014440 -0.015212 +v -0.016769 -0.009100 0.014714 +v -0.005157 0.006124 0.014842 +v 0.009701 -0.016022 0.014577 +v -0.000674 -0.013266 0.014647 +v -0.017973 0.027676 0.011392 +v -0.026605 -0.008061 -0.011852 +v 0.033297 0.009641 0.005411 +v -0.001676 0.025792 -0.005963 +v -0.013551 -0.027952 0.004704 +v -0.005184 0.020472 -0.015419 +v -0.012150 0.026754 0.014665 +v -0.011531 0.009785 0.014843 +v 0.013026 -0.013478 0.014576 +v 0.005902 0.016485 -0.015181 +v 0.022440 0.021582 0.001996 +v 0.003557 -0.000321 0.014799 +v 0.000259 0.005630 0.014859 +v 0.022147 0.010444 -0.015312 +v -0.006701 -0.014729 -0.015403 +v 0.032659 0.010636 0.012557 +v -0.030606 -0.000280 -0.002930 +v -0.018456 -0.022528 0.008158 +v -0.027285 0.020965 0.012467 +v -0.001066 0.016893 0.014906 +v 0.017092 0.021582 -0.012357 +v 0.004151 -0.004339 0.014758 +v 0.022797 0.005080 -0.015278 +v 0.012002 -0.012839 -0.015308 +v 0.026567 0.019034 -0.002176 +v -0.009464 -0.030140 -0.011779 +v -0.020875 0.023098 0.014917 +v -0.009238 -0.000598 0.014796 +v 0.028991 0.016484 0.009695 +v 0.010565 0.002704 -0.015205 +v -0.026859 0.015164 -0.015075 +v -0.017080 -0.024519 0.000037 +v 0.019228 0.021971 0.012476 +v -0.031049 0.013110 -0.000110 +v 0.033345 -0.002521 -0.005014 +v -0.013803 0.028694 -0.007947 +v 0.029823 -0.010244 0.012404 +v -0.010784 -0.030104 0.011302 +v -0.013585 0.027366 -0.013189 +v 0.003631 0.013410 0.014978 +v -0.004499 -0.031569 -0.011900 +v 0.007487 -0.028240 0.011072 +v 0.011833 0.022598 -0.006041 +v -0.009458 0.018649 -0.015217 +v 0.026104 -0.015181 0.002059 +v -0.030932 0.001523 0.007695 +v -0.014300 0.015272 0.014857 +v -0.001604 -0.006776 -0.015242 +v 0.031109 -0.004940 0.014262 +v -0.014905 0.020380 0.014910 +v -0.028529 -0.005890 -0.006767 +v 0.029299 0.016362 -0.001638 +v -0.008719 0.027394 -0.012016 +v -0.022716 0.013491 0.014896 +v -0.023932 0.019271 -0.015170 +v -0.022185 0.025635 0.012239 +v -0.028697 0.001027 -0.014537 +v -0.030906 0.000497 0.001276 +v 0.006050 0.021013 -0.004367 +v -0.006322 -0.017576 0.014614 +v -0.031626 0.009327 -0.006436 +v 0.028713 0.006574 -0.015359 +v 0.028805 -0.010059 -0.011521 +v 0.004340 0.019510 0.014292 +v -0.023884 -0.015664 0.000309 +v 0.010917 -0.005987 -0.015146 +v -0.018219 -0.023228 0.005060 +v -0.002065 0.026262 0.000824 +v 0.026676 0.018846 -0.007700 +v -0.027557 0.002309 0.014785 +v -0.002522 0.018428 -0.015358 +v -0.018020 0.027736 -0.004720 +v 0.031546 0.002812 0.014604 +v 0.008658 -0.008233 0.014698 +v 0.010914 0.020680 -0.013473 +v 0.014901 -0.009386 -0.015282 +v 0.015113 0.022355 0.007930 +v -0.029342 -0.003209 0.012430 +v -0.009440 0.011264 -0.015207 +v -0.002965 0.012909 0.014867 +v -0.021241 -0.002100 0.014768 +v -0.013730 -0.003829 -0.015273 +v -0.026383 0.022307 0.006230 +v 0.015484 0.011935 -0.015299 +v -0.011527 0.003254 0.014820 +v 0.021188 -0.019502 -0.003443 +v -0.007985 0.025016 -0.015058 +v 0.030952 0.006572 0.014672 +v 0.006865 0.004040 0.014838 +v 0.027571 -0.013054 0.008596 +v -0.006362 -0.032897 -0.007034 +v 0.000715 0.023936 -0.004212 +v 0.033889 -0.000477 0.001098 +v -0.030004 -0.002187 -0.009317 +v 0.011902 -0.026126 -0.002013 +v 0.020659 -0.008682 0.014535 +v -0.021774 -0.010047 -0.015374 +v -0.023390 0.003808 -0.015421 +v -0.014133 0.028855 -0.000784 +v 0.015799 -0.023191 -0.010354 +v -0.023789 0.024641 -0.003151 +v -0.012869 0.007951 -0.015193 +v 0.020185 -0.012454 0.014530 +v 0.034182 0.005204 0.005993 +v 0.030386 -0.009690 -0.001311 +v 0.025485 -0.007850 0.014570 +v 0.003450 0.009966 -0.015205 +v 0.025289 -0.007450 -0.015368 +v 0.004401 -0.007255 -0.015241 +v 0.016410 0.022881 -0.001910 +v -0.002326 -0.032166 -0.001917 +v -0.023641 -0.013401 -0.012322 +v -0.029501 -0.003680 -0.003107 +v 0.032876 -0.004584 -0.001536 +v 0.014322 -0.019876 0.014487 +v -0.012997 0.028609 0.010244 +v 0.021032 0.012936 0.014743 +v 0.023558 -0.001671 0.014556 +v -0.008201 0.028566 0.002591 +v -0.002703 0.009132 -0.015158 +v -0.006304 -0.032987 0.000506 +v -0.023575 0.023968 -0.011704 +v -0.013975 -0.027582 -0.004246 +v 0.014170 -0.015320 -0.015469 +v 0.022503 -0.006261 -0.015344 +v -0.008658 0.028574 -0.001728 +v -0.017264 0.028089 0.005240 +v -0.008930 0.011330 0.014861 +v -0.019617 -0.021186 -0.007388 +v -0.015212 -0.001497 0.014772 +v -0.010956 -0.008864 -0.015312 +v -0.012857 -0.024556 -0.015063 +v 0.033014 -0.004003 0.008944 +v -0.013752 -0.027863 -0.001085 +v -0.004154 0.026893 0.006867 +v 0.002322 0.022158 -0.008153 +v 0.031253 0.013798 0.000730 +v 0.012564 0.009827 0.014772 +v -0.009198 0.019477 0.014920 +v 0.021219 0.006449 0.014672 +v -0.015180 -0.000213 -0.015270 +v -0.026540 0.022221 -0.007172 +v 0.011358 0.022287 0.005846 +v -0.007654 -0.028385 -0.015384 +v -0.009777 -0.018851 0.014616 +v -0.030821 0.012950 -0.010759 +v 0.033187 0.009857 0.002444 +v 0.005414 -0.000103 -0.015172 +v 0.031710 0.007919 -0.014160 +v -0.029394 0.017671 0.003402 +v 0.006970 0.013031 0.014852 +v -0.001849 -0.024347 -0.015584 +v 0.029560 -0.011153 0.005602 +v -0.021393 -0.020086 0.002690 +v -0.000054 -0.010468 -0.015284 +v 0.012387 0.008228 -0.015226 +v -0.001990 -0.032019 0.011951 +v -0.002735 -0.014494 -0.015326 +v -0.024666 -0.007878 -0.014987 +v 0.019843 -0.000998 -0.015213 +v -0.021906 0.019604 0.014997 +v -0.024685 -0.013291 0.010242 +v 0.016975 -0.005068 -0.015231 +v 0.008237 0.019566 -0.014155 +v 0.031881 0.012723 -0.006008 +v -0.028413 0.019637 0.006830 +v -0.016624 -0.024804 0.002947 +v -0.007089 0.027840 0.008132 +v 0.002805 -0.030287 -0.005651 +v 0.005608 -0.025321 -0.015334 +v 0.017756 -0.021937 0.006362 +v -0.019250 -0.021431 0.012318 +v 0.011954 -0.026255 0.001325 +v -0.018678 0.027592 0.000971 +v 0.033123 0.004714 -0.011850 +v -0.017462 0.003435 -0.015277 +v -0.015833 -0.025647 -0.005820 +v 0.034213 0.003332 0.002725 +v 0.029828 0.002578 -0.015293 +v -0.007845 -0.006868 -0.015286 +v 0.028541 -0.004126 -0.015228 +v 0.024942 0.019717 0.006803 +v -0.029977 0.011281 -0.013262 +v 0.001290 0.022553 0.013306 +v -0.006175 -0.033007 0.010249 +v 0.003052 -0.029314 -0.011822 +v -0.029145 -0.005171 0.003346 +v 0.009649 -0.001231 0.014825 +v 0.032507 -0.006056 0.003216 +v 0.003077 -0.030139 0.008897 +v -0.006884 0.007259 -0.015205 +v -0.025401 0.023121 0.010976 +v -0.012898 -0.028230 0.010844 +v -0.031762 0.005748 -0.001562 +v -0.004077 0.019372 0.014945 +v -0.016163 0.026181 0.014751 +v 0.005709 -0.029306 0.005024 +v 0.009564 -0.026179 0.013912 +v -0.014933 -0.026237 -0.010407 +v 0.029221 -0.011043 -0.007307 +v 0.028241 0.001684 0.014635 +v -0.023828 -0.003614 -0.015394 +v -0.027015 0.020486 -0.011475 +v -0.010923 -0.021458 0.014610 +v 0.016538 -0.020502 -0.014187 +v -0.009813 -0.022988 -0.015628 +v 0.029920 0.012345 -0.014205 +v -0.017195 0.023423 0.014931 +v 0.001808 -0.030909 0.003318 +v 0.012538 -0.025381 0.008550 +v -0.027304 -0.008911 -0.004372 +v 0.001484 -0.011163 0.014685 +v 0.034126 0.003352 -0.007380 +v 0.002254 -0.030629 -0.000882 +v -0.006419 -0.009379 -0.015291 +v 0.027666 0.018031 0.003785 +v 0.031396 -0.007015 -0.010729 +v 0.019913 0.016563 0.014816 +v -0.018556 -0.004534 -0.015399 +v -0.016079 -0.006248 0.014776 +v 0.014600 0.022822 -0.007488 +v 0.003296 0.003175 -0.015189 +v -0.014780 0.028379 -0.010755 +v -0.006535 0.027665 0.012472 +v -0.002733 -0.027359 0.014542 +v -0.010809 0.006185 0.014836 +v 0.022205 0.002601 0.014642 +v -0.020111 -0.018930 -0.012166 +v -0.000415 -0.031414 0.008896 +v -0.003070 0.012107 -0.015223 +v -0.007931 -0.025516 -0.015590 +v 0.000044 0.024588 0.005480 +v 0.016266 -0.023528 0.001369 +v 0.001753 0.020378 -0.014041 +v -0.015061 -0.019586 0.014613 +v 0.020469 0.013969 -0.015381 +v 0.008331 -0.027733 0.008473 +v -0.020066 0.014322 0.014848 +v -0.006943 0.024841 0.014862 +v 0.003530 -0.028205 0.014269 +v 0.033980 0.007187 -0.004391 +v 0.019986 0.021823 -0.011040 +v 0.001464 -0.002709 -0.015203 +v 0.019954 0.022158 -0.006982 +v -0.028477 0.019302 0.010605 +v 0.021874 0.021676 -0.002118 +v -0.022801 0.007357 -0.015380 +v 0.026846 0.018426 0.009434 +v -0.015111 0.002166 0.014798 +v 0.011384 -0.026127 -0.008715 +v 0.031266 -0.007990 -0.005418 +v 0.007059 -0.028607 -0.001181 +v 0.000715 -0.005619 0.014767 +v 0.031474 -0.007661 0.008453 +v 0.028655 0.017013 -0.008187 +v -0.021285 -0.018871 0.007402 +v -0.028475 -0.002652 -0.012623 +v 0.017633 0.020869 0.014400 +v -0.010674 0.028393 0.012749 +v 0.032493 0.011448 0.007286 +v 0.004894 0.002053 0.014859 +v -0.000540 0.006701 -0.015181 +v -0.011775 -0.003123 0.014760 +v -0.015156 0.021155 -0.015379 +v -0.027002 0.008936 -0.015343 +v 0.021261 -0.017223 -0.013403 +v -0.012232 0.028586 0.007080 +v 0.028844 -0.012021 -0.000481 +v 0.023478 -0.012397 -0.015166 +v 0.007747 -0.021071 -0.015608 +v -0.016923 -0.023761 -0.011204 +v -0.018954 0.027406 -0.009806 +v -0.001133 0.000426 -0.015184 +v -0.004086 0.027402 0.002458 +v -0.024965 -0.014070 0.004715 +v 0.013901 -0.020963 -0.015105 +v -0.026979 -0.010001 0.000388 +v 0.005915 -0.002287 0.014796 +v -0.002485 0.026085 0.010942 +v -0.006527 0.014649 0.014881 +v -0.024902 -0.011544 0.014009 +v 0.018894 -0.016948 0.014473 +v -0.010768 -0.012730 -0.015421 +v -0.012635 -0.028666 -0.006323 +v 0.004545 -0.025693 0.014509 +v -0.014217 0.011811 0.014841 +v 0.019810 -0.020292 -0.009653 +v 0.001187 -0.029829 0.014003 +v 0.004773 0.007490 0.014857 +v -0.023482 0.024998 -0.009092 +v 0.033248 0.009633 0.009767 +v -0.029565 0.017339 -0.006016 +v -0.030695 0.014459 0.005151 +v 0.021742 0.021098 0.012705 +v 0.034144 0.005638 0.010929 +v 0.019789 -0.004592 0.014597 +v -0.005465 0.027709 -0.003202 +v -0.009434 -0.027125 0.014532 +v -0.027796 0.006981 0.014837 +v 0.025165 -0.004873 0.014604 +v 0.031496 -0.007712 -0.002682 +v 0.024383 0.012836 0.014755 +v -0.019764 -0.021184 -0.001859 +v 0.014051 0.021000 0.014413 +v 0.025497 -0.015286 -0.007475 +v -0.027225 -0.008489 0.011080 +v -0.007113 -0.024054 0.014562 +v 0.012115 -0.023178 -0.014565 +v 0.027883 -0.013245 0.002326 +v 0.033494 0.009135 -0.008965 +v -0.006236 -0.030028 0.014461 +v -0.030064 0.002062 0.013993 +v -0.010702 -0.030673 0.008248 +v -0.025401 -0.006734 0.014687 +v 0.015955 0.015478 0.014826 +v -0.016237 -0.016401 0.014629 +v -0.018336 -0.007157 -0.015448 +v 0.034206 0.004495 -0.003057 +v -0.024438 0.016153 -0.015329 +v -0.001877 -0.017892 -0.015362 +v -0.029889 0.015714 0.013013 +v 0.016034 -0.012575 0.014547 +v -0.025056 -0.013543 -0.000728 +v 0.034228 0.005095 0.000536 +v -0.011229 0.028673 -0.007496 +v 0.000169 -0.024720 0.014558 +v -0.005472 -0.019502 -0.015439 +v 0.017583 0.001711 -0.015221 +v 0.002217 -0.015433 -0.015338 +v -0.030190 -0.002265 0.003379 +v 0.013560 -0.024529 -0.010926 +v 0.005310 0.021054 0.002054 +v -0.031156 0.007118 0.013449 +v 0.006961 0.007351 -0.015152 +v 0.026534 0.018510 0.012544 +v -0.018139 0.022909 -0.015277 +v 0.024312 0.020542 -0.003360 +v -0.017231 0.012519 -0.015262 +v 0.025900 -0.013361 -0.011751 +v 0.000105 0.023629 -0.011216 +v 0.032153 -0.002463 0.014194 +v -0.026314 -0.009408 0.013655 +v 0.019449 0.021896 0.007409 +v 0.004779 0.020856 -0.006836 +v 0.015588 0.022627 -0.010539 +v -0.028024 0.011489 0.014864 +v 0.010563 0.022272 -0.008263 +v 0.006212 0.020609 0.008983 +v -0.031381 0.004593 0.010007 +v 0.015424 0.018625 -0.015310 +v -0.000593 -0.019566 0.014566 +v -0.004445 -0.003638 -0.015233 +v -0.001803 -0.031559 -0.011170 +v -0.031438 0.010930 0.001194 +v -0.000601 -0.029258 -0.014698 +v -0.023926 -0.014523 0.012360 +v 0.002693 0.015895 -0.015246 +v -0.010319 -0.028776 -0.013774 +v -0.014286 0.008593 0.014816 +v -0.002399 -0.011374 0.014719 +v -0.022417 -0.017839 -0.002143 +v 0.034052 0.000941 0.011640 +v 0.001534 -0.008314 -0.015257 +v 0.008956 -0.026952 -0.011434 +v -0.004148 -0.023230 -0.015523 +v 0.018063 0.006891 -0.015257 +v 0.001144 0.011331 0.014860 +v 0.013002 0.005754 -0.015205 +v 0.013660 0.013711 -0.015324 +v 0.009436 0.022155 -0.000904 +v -0.030698 0.009011 -0.011812 +v -0.004877 -0.032935 0.003920 +v 0.009833 0.001303 0.014792 +v -0.004815 0.003565 0.014829 +v 0.010697 -0.027236 0.003634 +v 0.018831 0.009572 0.014710 +v 0.000214 -0.020390 -0.015408 +v -0.021096 -0.003559 -0.015457 +v 0.033867 -0.000177 -0.004217 +v -0.013146 0.005437 -0.015224 +v 0.006022 -0.028844 -0.008802 +v -0.023365 0.021660 0.014855 +v -0.019691 0.011819 0.014825 +v 0.023560 -0.016680 0.013228 +v -0.015548 0.028277 0.010330 +v -0.007298 -0.012483 0.014683 +v -0.031346 0.009631 0.012567 +v -0.016680 -0.019062 -0.015279 +v 0.010910 -0.009349 0.014714 +v -0.014467 -0.026973 0.007647 +v 0.004126 -0.017336 -0.015375 +v 0.025870 0.016191 0.014681 +v -0.019985 -0.019411 0.013904 +v 0.003593 0.021032 0.009217 +v 0.022108 -0.018811 -0.001213 +v -0.021215 0.005053 -0.015333 +v -0.010674 -0.015251 0.014701 +v 0.019405 -0.021034 -0.001962 +v -0.027734 -0.008566 0.003471 +v -0.007242 -0.032653 0.012725 +v 0.027271 0.016367 -0.013585 +v -0.022081 0.024008 -0.013712 +v -0.010919 -0.018612 -0.015536 +v 0.002970 -0.025728 -0.015505 +v -0.006623 0.018313 0.014945 +v -0.010622 -0.007796 0.014721 +v -0.013284 0.025557 -0.015034 +v 0.000348 -0.016341 0.014594 +v -0.010518 -0.003077 -0.015262 +v 0.003177 -0.016386 0.014623 +v -0.015602 0.026362 -0.014412 +v -0.024181 -0.014662 -0.007000 +v 0.012958 0.022808 -0.003833 +v 0.033997 0.004940 -0.009535 +v 0.012424 0.018614 -0.015244 +v -0.005152 -0.005830 0.014759 +v 0.028337 0.006971 0.014721 +v -0.011000 0.015443 0.014878 +v 0.015851 -0.024114 0.004098 +v -0.003915 0.009229 0.014862 +v 0.022179 0.017560 0.014776 +v -0.015496 0.017439 0.014893 +v 0.028012 -0.012816 -0.003261 +v 0.031905 -0.006598 -0.007473 +v 0.033319 0.009574 -0.001823 +v -0.022304 -0.018260 0.005189 +v -0.010121 -0.031093 -0.003147 +v 0.028599 -0.004367 0.014606 +v 0.033327 -0.003214 0.000469 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_0.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_0.obj new file mode 100644 index 0000000000000000000000000000000000000000..34b70081f7765a924b9f1b2f106eca5c35029d68 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_0.obj @@ -0,0 +1,1028 @@ +o kp.000 +v -0.000500 -0.000500 0.052500 +v -0.000500 0.000500 0.052500 +v -0.000500 0.000500 0.051500 +v -0.000500 -0.000500 0.051500 +v 0.000500 0.000500 0.051500 +v 0.000500 -0.000500 0.051500 +v 0.000500 0.000500 0.052500 +v 0.000500 -0.000500 0.052500 +o kp.001 +v -0.000500 -0.000500 -0.029500 +v -0.000500 0.000500 -0.029500 +v -0.000500 0.000500 -0.030500 +v -0.000500 -0.000500 -0.030500 +v 0.000500 0.000500 -0.030500 +v 0.000500 -0.000500 -0.030500 +v 0.000500 0.000500 -0.029500 +v 0.000500 -0.000500 -0.029500 +o kp.002 +v -0.002500 0.057500 0.040500 +v -0.002500 0.058500 0.040500 +v -0.002500 0.058500 0.039500 +v -0.002500 0.057500 0.039500 +v -0.001500 0.058500 0.039500 +v -0.001500 0.057500 0.039500 +v -0.001500 0.058500 0.040500 +v -0.001500 0.057500 0.040500 +o mesh +v -0.032846 -0.017137 0.051456 +v 0.026960 0.011662 -0.031198 +v -0.000056 0.058704 0.033916 +v 0.036566 -0.000244 0.050971 +v -0.028476 -0.016735 -0.013514 +v 0.019097 -0.029530 0.008226 +v -0.011637 0.029744 -0.005547 +v 0.008473 -0.036265 0.051531 +v 0.027763 0.020384 0.012543 +v -0.023980 0.026154 0.052071 +v 0.006837 -0.029642 -0.031030 +v -0.034136 0.007050 0.018127 +v -0.017443 -0.030985 0.020127 +v 0.016704 0.030869 0.051694 +v -0.026422 0.012730 -0.031232 +v 0.000074 -0.002379 0.018770 +v -0.000064 -0.000542 -0.024727 +v 0.031721 -0.006837 -0.007997 +v -0.011124 0.031795 0.025508 +v 0.000898 0.055255 0.003929 +v 0.034304 -0.007859 0.022420 +v 0.003072 0.028836 -0.031147 +v -0.005980 -0.032528 -0.005726 +v 0.017603 0.026776 -0.010337 +v 0.027242 -0.023494 0.040976 +v -0.031542 0.006978 -0.006609 +v 0.026521 -0.013560 -0.031193 +v -0.015266 -0.033354 0.047792 +v -0.034440 0.005264 0.042193 +v 0.013528 0.031990 0.027817 +v 0.004677 -0.034635 0.028142 +v -0.004554 0.040616 0.048675 +v -0.032600 -0.014256 0.027762 +v -0.016051 -0.025672 -0.030986 +v 0.030547 0.017660 0.035280 +v 0.020285 -0.025635 -0.013332 +v -0.024254 0.024487 0.010507 +v -0.030057 -0.017788 0.007328 +v 0.003526 0.033947 0.008110 +v -0.027164 0.020629 0.031417 +v -0.028741 -0.007570 -0.031163 +v 0.029858 0.011898 -0.011785 +v 0.019563 0.004476 0.019350 +v -0.011350 0.020469 -0.022071 +v -0.003829 0.016587 0.016976 +v -0.018565 -0.005069 0.018398 +v 0.014762 -0.013729 0.018809 +v 0.034297 0.003126 0.007749 +v 0.001300 -0.035404 0.010498 +v 0.010554 0.013844 -0.024704 +v -0.001889 -0.019838 0.017954 +v 0.030546 -0.016679 0.006104 +v 0.029845 0.019983 0.052083 +v 0.022790 -0.027162 0.024870 +v 0.010464 -0.013406 -0.024666 +v -0.025956 -0.024889 0.038553 +v 0.001866 0.031599 -0.014229 +v -0.004922 0.055065 0.018965 +v -0.013742 -0.008884 -0.024747 +v -0.023941 0.021223 -0.011151 +v -0.019941 -0.028048 0.000575 +v 0.023547 -0.000671 -0.021889 +v -0.034522 -0.002580 0.005594 +v 0.035328 0.002855 0.034932 +v 0.001642 0.040297 0.022160 +v 0.011367 0.020716 0.017483 +v -0.016907 -0.027823 -0.015334 +v 0.017813 0.029088 0.005076 +v -0.009237 -0.033951 0.033945 +v -0.014705 0.030864 0.040127 +v 0.033595 -0.014974 0.051779 +v 0.009021 -0.031786 -0.002644 +v -0.002986 -0.020066 -0.025080 +v -0.017327 0.010329 0.017838 +v 0.001388 0.034030 0.036732 +v -0.011148 0.032401 0.009402 +v 0.015394 -0.031574 0.037778 +v 0.033414 0.010170 0.022444 +v -0.027927 0.002130 -0.020376 +v 0.006023 -0.031098 -0.016815 +v 0.021426 -0.029775 0.052050 +v -0.032812 0.015127 0.051929 +v -0.015454 0.007220 -0.024776 +v -0.031722 0.013222 0.005946 +v 0.033773 -0.011818 0.037474 +v -0.034137 -0.008256 0.040734 +v -0.034467 -0.000908 0.029309 +v 0.025822 0.019557 -0.000814 +v 0.018594 0.022602 -0.030968 +v 0.021364 0.026879 0.038513 +v -0.022020 -0.018442 0.019097 +v 0.001020 0.052399 0.045791 +v -0.004402 0.043157 0.002099 +v 0.024110 0.023621 0.024910 +v 0.027323 -0.014816 -0.017641 +v 0.009365 -0.026645 0.017430 +v 0.018814 -0.023930 -0.030982 +v -0.032193 -0.005977 -0.006461 +v -0.001974 -0.036362 0.044117 +v 0.007498 0.008333 0.018341 +v -0.036618 -0.002548 0.051830 +v 0.034084 0.010476 0.045001 +v 0.021485 0.018802 -0.019459 +v -0.033496 -0.006378 0.018239 +v 0.007571 0.030812 -0.003314 +v -0.025086 -0.026696 0.052135 +v -0.005989 -0.035249 0.021009 +v -0.013397 0.032804 0.052136 +v 0.029370 -0.019278 0.018577 +v -0.010359 -0.033709 0.008006 +v -0.001393 0.012734 -0.024792 +v 0.026976 -0.018937 -0.006015 +v 0.005343 0.034573 0.051704 +v 0.011216 0.025069 -0.020235 +v -0.019139 0.022051 -0.031185 +v -0.013736 0.023836 0.017046 +v -0.028838 0.017327 0.019795 +v -0.008981 0.027624 -0.031148 +v -0.004924 -0.029748 -0.031123 +v 0.011346 0.001318 -0.024695 +v -0.033457 0.011020 0.031423 +v -0.006058 -0.029930 -0.018396 +v 0.012887 0.031809 0.015372 +v -0.021329 0.024382 -0.000535 +v -0.025072 0.014009 -0.019750 +v 0.032129 0.005025 -0.003258 +v -0.028642 0.020949 0.042492 +v 0.029497 0.000775 -0.031199 +v -0.024192 -0.018093 -0.031023 +v -0.019033 -0.029350 0.030996 +v -0.023153 -0.026664 0.011056 +v -0.019364 -0.018801 -0.021140 +v 0.028756 -0.019391 0.030888 +v -0.000818 0.024153 -0.021768 +v -0.001358 0.027739 0.015589 +v 0.019108 -0.027250 -0.002378 +v -0.004037 0.040390 0.012573 +v 0.012463 0.032917 0.039808 +v 0.013136 -0.023429 -0.021163 +v -0.008877 0.029352 -0.016433 +v -0.021216 0.027509 0.023750 +v -0.025352 -0.009817 -0.020974 +v -0.027742 -0.018625 -0.003123 +v 0.031788 0.001907 -0.015774 +v 0.033967 -0.007571 0.010254 +v 0.029833 0.001540 0.017550 +v 0.020503 0.015001 0.017970 +v -0.002984 0.032426 -0.000013 +v -0.022856 0.001060 -0.029497 +v 0.019837 0.009372 -0.023728 +v 0.022640 -0.005325 0.020234 +v 0.031845 0.012784 0.004048 +v 0.020281 -0.010179 -0.023589 +v -0.027291 -0.022847 0.026530 +v -0.012243 -0.016193 0.018201 +v 0.014275 -0.031791 0.027869 +v 0.018733 -0.023407 0.016516 +v -0.025586 0.001918 0.018401 +v -0.006975 0.004414 0.018280 +v -0.003797 -0.009542 -0.024714 +v -0.031621 -0.017032 0.037399 +v -0.028266 0.016539 -0.002510 +v 0.028460 -0.023160 0.052009 +v 0.006613 -0.035587 0.037655 +v 0.021170 0.027104 0.015979 +v 0.010612 -0.033650 0.010069 +v -0.007092 -0.035777 0.052063 +v -0.011934 -0.017989 -0.027141 +v 0.008961 -0.005397 0.018985 +v -0.031057 -0.016601 0.017539 +v -0.022503 -0.023957 -0.008738 +v -0.017609 0.025986 -0.016051 +v -0.009212 -0.004610 0.018625 +v 0.005947 -0.020965 -0.027662 +v 0.033759 -0.004800 0.000815 +v 0.008755 0.021340 -0.029826 +v 0.027797 0.021963 0.042988 +v 0.035158 0.001351 0.025816 +v -0.002576 0.034608 0.028466 +v -0.000010 -0.034864 0.000788 +v -0.010151 -0.025972 0.017847 +v 0.024357 0.020665 -0.010440 +v -0.000252 -0.028761 0.017146 +v -0.031266 -0.005078 -0.016020 +v -0.004950 0.057835 0.010341 +v -0.005893 0.033808 0.042095 +v 0.000731 0.054169 0.026153 +v 0.034827 -0.002332 0.042277 +v -0.022043 0.027339 0.034537 +v -0.035961 0.006712 0.051554 +v -0.018879 -0.030902 0.039943 +v 0.025422 -0.023954 0.005126 +v -0.008996 -0.000034 -0.024688 +v -0.032518 -0.011141 0.000750 +v 0.006620 -0.035037 0.019579 +v -0.029405 0.014360 -0.011443 +v -0.000709 -0.011108 0.018506 +v 0.033209 0.010000 0.013062 +v 0.024132 0.026384 0.050345 +v -0.004913 0.056535 0.040867 +v 0.034212 -0.005168 0.031455 +v 0.027348 0.008384 -0.019526 +v 0.021796 -0.027299 0.033926 +v 0.001671 0.040233 0.042746 +v -0.015766 -0.029633 -0.007070 +v 0.007363 0.033767 0.022197 +v 0.029393 -0.006565 -0.018234 +v 0.022424 -0.004385 -0.029462 +v -0.020711 0.018013 0.016537 +v 0.029957 0.017743 0.020304 +v 0.004722 0.006611 -0.024697 +v 0.001106 -0.033687 -0.010180 +v -0.008398 0.032247 0.017544 +v -0.032535 0.014105 0.039210 +v 0.020576 -0.018919 -0.020572 +v -0.033256 -0.010601 0.010320 +v -0.015758 0.030083 0.002139 +v 0.015658 -0.031892 0.019266 +v 0.014518 -0.033438 0.045906 +v -0.017906 0.013783 -0.029370 +v -0.020837 -0.009551 -0.029224 +v -0.011877 -0.024465 -0.021128 +v 0.009992 0.030001 -0.012997 +v 0.013965 -0.030040 -0.009141 +v -0.033870 0.004626 0.001470 +v 0.023058 -0.013592 0.019337 +v 0.007414 -0.018586 0.017904 +v 0.017506 -0.015350 -0.029410 +v -0.008356 0.032926 0.034121 +v -0.003739 0.021538 -0.029015 +v 0.024346 0.024082 0.005890 +v 0.021572 -0.028960 0.043292 +v 0.032641 0.010929 0.030566 +v -0.034025 0.006158 0.009989 +v -0.028779 -0.022266 0.045757 +v -0.001047 -0.036160 0.035235 +v 0.019732 0.025116 -0.001637 +v -0.025664 -0.010754 0.018391 +v -0.017718 0.029426 0.012939 +v -0.022344 0.026152 0.042426 +v -0.012461 -0.032169 0.000482 +v -0.035608 -0.000818 0.037199 +v 0.016903 0.014692 -0.029411 +v -0.009367 -0.034132 0.042295 +v -0.025318 0.010579 0.017582 +v 0.033893 -0.009204 0.046104 +v 0.010668 0.032326 0.004120 +v -0.023898 -0.026479 0.019619 +v 0.000760 -0.027106 -0.021180 +v 0.030687 -0.011838 -0.000908 +v -0.016796 -0.001024 -0.024795 +v -0.004212 0.031838 -0.007737 +v 0.022956 0.004839 -0.029773 +v 0.000618 -0.037187 0.051461 +v 0.031949 -0.016586 0.044298 +v -0.034756 -0.007819 0.032929 +v 0.001637 0.041883 0.006840 +v -0.034922 -0.009885 0.049554 +v 0.025707 -0.024032 0.013134 +v -0.011681 0.020313 -0.029867 +v 0.026701 0.008598 0.018925 +v -0.029301 0.005320 -0.029678 +v 0.001117 0.058162 0.015116 +v 0.013596 -0.006346 -0.024697 +v 0.006197 0.026422 0.016957 +v 0.003854 0.018355 -0.024673 +v 0.025456 0.024024 0.032470 +v -0.004098 0.046704 0.044012 +v 0.003067 0.034119 0.015764 +v 0.031736 -0.015622 0.024934 +v -0.019662 0.019381 -0.020354 +v -0.025845 -0.023396 0.004327 +v 0.035306 0.007619 0.051968 +v -0.008980 0.012791 -0.024746 +v -0.029681 0.008701 -0.016912 +v 0.001362 0.045312 0.049204 +v 0.001289 0.048259 0.001084 +v 0.032521 -0.012968 0.015328 +v -0.033081 0.000192 0.014512 +v -0.031613 0.014106 0.013571 +v -0.012454 -0.032501 0.025561 +v -0.032340 0.001887 -0.013394 +v 0.006386 0.033233 0.029644 +v 0.019700 0.028824 0.030587 +v -0.003840 0.033828 0.007274 +v -0.031894 0.012001 0.023925 +v -0.025241 0.023941 0.017811 +v 0.029507 0.017080 0.027948 +v -0.017236 -0.024378 0.016564 +v -0.004800 0.006197 -0.024740 +v -0.035046 0.000722 0.021765 +v -0.018654 0.026501 -0.007027 +v -0.027190 0.020817 0.004889 +v 0.005063 -0.005750 -0.024693 +v -0.016752 0.030648 0.030754 +v -0.010793 0.014459 0.017344 +v 0.002401 -0.013343 -0.024866 +v -0.023220 -0.027903 0.044918 +v -0.006285 0.033990 0.051013 +v 0.005684 -0.035949 0.044872 +v -0.001606 0.033598 0.021407 +v -0.017323 -0.030566 0.006786 +v -0.023432 -0.021883 -0.015552 +v 0.013466 -0.032323 0.003616 +v 0.029685 0.012880 -0.004682 +v -0.003307 -0.034820 0.027630 +v -0.022505 0.006500 -0.022018 +v -0.027732 -0.021552 0.013025 +v 0.000537 -0.025911 -0.028605 +v -0.004674 0.050830 0.004062 +v -0.005006 0.058014 0.027841 +v 0.029393 -0.006231 -0.030163 +v -0.005971 -0.034944 0.013381 +v 0.034246 0.009043 0.038105 +v -0.029137 0.021538 0.050958 +v 0.031464 -0.005218 0.016587 +v 0.001406 0.021327 0.016804 +v 0.012974 -0.029279 -0.016015 +v 0.004488 0.034148 0.044656 +v -0.013351 -0.032825 0.014793 +v 0.018258 0.024421 -0.016856 +v -0.035033 -0.002125 0.044008 +v -0.025499 0.022092 0.024538 +v -0.017732 -0.011936 0.018950 +v -0.018455 0.029160 0.047314 +v 0.032867 0.000690 -0.009037 +v 0.019422 0.028645 0.023667 +v 0.019703 0.028268 0.045080 +v 0.011780 -0.023687 -0.030132 +v 0.033566 0.014232 0.051117 +v 0.023382 0.017229 -0.029474 +v 0.005227 0.028213 -0.019117 +v -0.033979 0.010986 0.045888 +v -0.009259 -0.031609 -0.012619 +v 0.025954 -0.019779 -0.013215 +v -0.015848 0.030713 0.020763 +v 0.011220 0.033727 0.048428 +v -0.007374 -0.022612 -0.029530 +v -0.022859 -0.002368 -0.022158 +v -0.017783 0.003603 0.017945 +v 0.030380 -0.011847 -0.012292 +v 0.006000 -0.034652 0.003808 +v 0.014681 0.028822 -0.004086 +v 0.013380 0.007679 -0.024738 +v 0.003453 0.033467 0.001424 +v -0.031403 -0.016266 0.044708 +v 0.016570 0.015276 -0.022174 +v 0.031440 0.016429 0.041726 +v -0.030814 -0.010477 -0.012211 +v 0.023893 -0.022639 -0.001472 +v 0.026873 0.016921 -0.015285 +v -0.018674 0.013163 -0.022396 +v 0.028915 0.018473 0.005738 +v -0.009620 0.032090 0.000758 +v 0.033124 -0.012882 0.030995 +v 0.010071 -0.034571 0.032077 +v -0.034820 -0.006065 0.025268 +v 0.023442 -0.019124 -0.029584 +v -0.030871 0.010362 -0.001031 +v 0.027439 -0.020929 0.024621 +v -0.018038 -0.015723 -0.027853 +v 0.026028 0.023006 0.018697 +v -0.004439 0.040256 0.019805 +v -0.022284 0.007692 -0.028422 +v -0.027286 -0.021825 0.032959 +v -0.002605 0.029502 -0.018545 +v 0.034841 -0.001087 0.012889 +v 0.012535 0.026493 -0.030924 +v 0.000421 -0.035734 0.022408 +v 0.035501 0.004156 0.045221 +v 0.017836 0.000498 -0.024714 +v -0.028835 -0.001378 -0.029327 +v -0.027022 -0.004473 0.017838 +v 0.030388 -0.017279 0.037975 +v 0.011440 0.014286 0.017728 +v 0.001123 0.054955 0.039309 +v -0.013563 0.028954 -0.012037 +v -0.033039 -0.002934 -0.000865 +v -0.000440 -0.032291 -0.016364 +v 0.018168 0.021456 0.016550 +v -0.019274 -0.030640 0.052000 +v 0.000250 0.058590 0.021546 +v 0.025696 -0.024434 0.019512 +v 0.006496 -0.024371 -0.021831 +v -0.003129 0.028894 -0.028970 +v 0.001500 0.040706 0.015707 +v 0.007910 -0.032006 -0.009216 +v -0.020880 0.026930 0.005270 +v -0.035107 0.004996 0.034711 +v 0.035779 -0.006453 0.051897 +v -0.006293 -0.034267 0.001202 +v -0.027014 0.018618 0.013880 +v -0.030915 0.016916 0.027949 +v -0.006210 -0.014334 0.018300 +v -0.021212 -0.028869 0.024794 +v 0.024804 -0.025175 0.047156 +v 0.015896 -0.032778 0.052088 +v 0.002057 0.031867 -0.007197 +v 0.015229 -0.005188 0.019254 +v -0.033854 0.005796 0.027983 +v -0.032406 -0.011701 0.021337 +v -0.003374 0.053746 0.032106 +v 0.000239 0.054116 0.010021 +v -0.019546 -0.011675 -0.023379 +v -0.012360 0.033099 0.045396 +v -0.025582 -0.015698 -0.019090 +v 0.015929 0.031194 0.034991 +v -0.023050 -0.023547 -0.002299 +v 0.019790 -0.029274 0.014908 +v 0.014956 -0.017739 -0.022840 +v -0.027872 -0.021824 0.020281 +v -0.010837 -0.028631 -0.029620 +v -0.005949 0.023847 0.016793 +v 0.004605 0.013682 0.017603 +v -0.029006 -0.022002 0.052081 +v 0.013221 0.032145 0.021601 +v 0.011863 0.019276 -0.022260 +v 0.034611 0.004807 0.019805 +v 0.001279 0.038855 0.048667 +v 0.013537 -0.020652 0.018103 +v 0.027298 -0.009123 0.019285 +v -0.004384 0.039751 0.042555 +v 0.028881 -0.017540 0.000078 +v 0.025628 -0.024961 0.029698 +v 0.030967 0.015344 0.011467 +v 0.010389 0.003099 0.018942 +v 0.000142 -0.035551 0.016409 +v -0.007079 0.024635 -0.021375 +v 0.001918 0.023745 -0.028177 +v 0.016741 0.009697 0.018430 +v 0.033993 -0.001538 0.020702 +v -0.024336 -0.026609 0.030529 +v 0.033124 -0.010163 0.004934 +v 0.030035 -0.017927 0.011916 +v -0.018977 -0.029912 0.013811 +v 0.008069 0.033232 0.012157 +v -0.034545 -0.004590 0.011279 +v 0.034136 0.001626 0.001185 +v -0.001716 0.007179 0.018183 +v 0.024399 0.013502 -0.020156 +v 0.020990 -0.010583 -0.029646 +v 0.034542 -0.002601 0.006315 +v -0.007020 -0.014472 -0.024812 +v -0.024529 0.020772 -0.004179 +v -0.025911 0.023927 0.038212 +v -0.004825 0.052490 0.045174 +v -0.023473 0.018093 -0.030964 +v 0.031524 0.006983 -0.009052 +v -0.014774 -0.032918 0.035558 +v -0.006075 -0.025006 -0.021677 +v -0.003187 -0.035012 0.006099 +v -0.012159 0.001736 0.018320 +v -0.029873 -0.013797 -0.005606 +v 0.005218 0.000347 0.018871 +v -0.001966 0.034301 0.012752 +v -0.026652 -0.012778 -0.029682 +v 0.003607 -0.033275 -0.004082 +v -0.014134 0.025684 -0.029345 +v 0.035113 -0.006195 0.037589 +v -0.030069 0.016373 0.034504 +v 0.020840 0.027151 0.009587 +v 0.029032 0.006399 -0.030057 +v 0.012547 -0.018042 -0.028306 +v -0.006680 0.018502 -0.024787 +v 0.023052 -0.023169 -0.007125 +v 0.014904 0.026549 0.016432 +v 0.023326 -0.019988 0.016483 +v -0.008105 -0.005688 -0.024728 +v -0.020461 -0.022392 -0.029409 +v 0.026612 -0.024344 0.035364 +v 0.008332 0.033090 0.035010 +v -0.014094 0.016655 -0.026211 +v 0.010004 -0.032341 0.015903 +v 0.009269 -0.012362 0.018458 +v 0.025272 -0.009311 -0.021072 +v -0.012460 0.025494 -0.019728 +v -0.023982 0.025356 0.028897 +v -0.003574 0.039735 0.006976 +v 0.025806 0.016135 0.016440 +v -0.032813 0.000387 -0.007987 +v -0.030859 0.017957 0.046968 +v 0.031962 -0.004321 -0.013761 +v 0.013448 0.018853 -0.027954 +v -0.024795 0.018773 -0.016113 +v 0.030722 0.012918 0.017585 +v 0.029039 -0.021464 0.046716 +v 0.018607 -0.017820 0.018507 +v -0.022453 -0.028363 0.035472 +v -0.007941 -0.031381 0.017180 +v 0.028904 -0.000839 -0.019665 +v 0.021756 0.011508 -0.028494 +v 0.033358 0.007743 0.002281 +v -0.002368 0.035655 0.045959 +v 0.027124 0.017906 -0.005941 +v -0.005350 -0.035920 0.038924 +v -0.004560 0.031497 -0.013703 +v 0.018668 -0.023768 -0.018693 +v 0.025016 0.000541 0.020096 +v 0.021100 -0.027841 0.002754 +v -0.011469 -0.028936 -0.017885 +v 0.029760 -0.014293 -0.007377 +v -0.020111 0.028119 0.018378 +v -0.027664 -0.004475 -0.020454 +v -0.035937 0.002444 0.048074 +v 0.010955 -0.034543 0.040844 +v -0.017403 -0.023701 -0.019641 +v -0.023475 -0.004862 -0.028169 +v -0.032128 -0.011363 0.015874 +v 0.022844 0.004756 -0.022019 +v -0.003472 0.048396 0.049179 +v -0.030229 -0.016999 0.001460 +v -0.025935 0.024182 0.046035 +v 0.022859 0.022168 -0.005446 +v 0.006439 0.022269 -0.021964 +v -0.002810 0.038711 0.024803 +v 0.009149 -0.034652 0.025089 +v 0.015815 0.030353 0.009932 +v 0.005310 0.012553 -0.024751 +v -0.026603 -0.019754 -0.009459 +v -0.022373 -0.023338 0.015219 +v -0.019262 -0.006504 -0.024781 +v 0.030688 0.007098 -0.015133 +v -0.008708 -0.034929 0.028497 +v 0.001872 0.033654 0.025462 +v 0.034790 0.005731 0.030468 +v 0.019290 -0.026882 -0.007860 +v -0.030470 -0.018099 0.023080 +v -0.003830 0.035057 0.036748 +v 0.032193 -0.013375 0.010048 +v 0.018798 -0.029284 0.030029 +v 0.032808 -0.012652 0.020608 +v 0.019838 -0.004550 -0.024843 +v 0.024340 0.025747 0.044299 +v 0.034393 0.004156 0.013319 +v 0.001346 0.038011 0.010981 +v -0.004646 0.055985 0.005142 +v -0.010066 -0.034182 0.047857 +v 0.014575 -0.027139 0.016853 +v 0.022812 0.022637 0.013728 +v 0.001595 -0.022611 -0.024611 +v 0.017232 0.030755 0.040213 +v 0.001111 0.047357 0.044062 +v 0.035065 -0.003937 0.026430 +v -0.005153 0.058002 0.035840 +v -0.001059 0.035600 0.052035 +v 0.002442 -0.035325 0.040813 +v 0.015257 0.030955 0.045693 +v 0.007785 0.026850 -0.028770 +v -0.032382 0.012724 0.018547 +v -0.031517 -0.015225 0.012416 +v 0.001510 -0.030678 -0.030495 +v 0.006365 0.033652 0.039807 +v -0.019611 -0.026664 -0.004673 +v 0.016787 0.020484 -0.020946 +v 0.005108 0.000031 -0.024704 +v -0.031098 0.008456 -0.011913 +v 0.000273 0.053758 0.019623 +v -0.009149 -0.020833 -0.023810 +v 0.031333 0.017042 0.047371 +v 0.013931 0.027538 -0.016582 +v -0.030584 -0.016748 0.031828 +v 0.015437 -0.031777 0.013651 +v -0.027279 0.017593 -0.007478 +v 0.004590 -0.030277 0.016153 +v 0.018179 -0.000500 0.019575 +v -0.021689 -0.027529 0.005409 +v -0.006738 0.032862 0.022997 +v -0.002907 0.053792 0.014103 +v 0.023148 -0.026417 0.009351 +v -0.030061 0.004188 0.016843 +v 0.032383 -0.003613 -0.004052 +v 0.017550 -0.030995 0.023992 +v -0.028953 -0.010872 -0.017469 +v 0.035731 -0.004462 0.046860 +v -0.001613 0.019324 -0.024722 +v -0.019384 0.022936 0.015966 +v -0.014333 -0.018732 -0.022675 +v -0.008753 0.030625 -0.009758 +v -0.034160 0.009452 0.036998 +v 0.035577 0.003071 0.040011 +v -0.006108 -0.009255 0.018575 +v -0.022205 0.006094 0.018211 +v -0.014354 -0.013929 -0.024715 +v 0.015352 -0.012032 -0.024816 +v -0.020191 0.002750 -0.024951 +v 0.020338 -0.027705 0.020465 +v 0.023223 -0.014609 -0.020837 +v -0.032803 -0.012017 0.034979 +v -0.018946 -0.030042 0.046796 +v 0.003495 -0.013872 0.018264 +v 0.022229 0.022066 -0.014844 +v 0.033153 -0.009841 0.026898 +v 0.010406 0.030059 -0.007989 +v -0.014393 0.017957 0.017395 +v 0.009408 -0.020819 -0.023840 +v 0.000835 0.058407 0.028993 +v -0.008651 -0.019681 0.018183 +v 0.029383 0.014623 0.000001 +v 0.027178 0.022946 0.048371 +v 0.001696 -0.023317 0.017962 +v 0.008968 -0.028076 -0.019475 +v -0.010516 0.027617 0.016599 +v 0.013842 0.030273 0.000610 +v -0.007872 0.032920 0.029116 +v -0.013298 0.032360 0.033933 +v 0.000709 0.035457 0.041701 +v -0.011979 -0.032649 0.020619 +v -0.033056 0.009207 0.003276 +v -0.029861 0.017110 0.008410 +v 0.003698 0.005149 0.018539 +v 0.005738 -0.034977 0.012668 +v -0.034460 0.002309 0.006415 +v -0.015718 0.030340 0.007089 +v 0.027426 -0.021659 0.009137 +v 0.001125 0.042774 0.001993 +v -0.015159 -0.020378 -0.030036 +v 0.013517 -0.030536 -0.000998 +v 0.022861 0.000474 -0.027445 +v -0.016747 0.027961 -0.002216 +v 0.032881 0.012990 0.035461 +v -0.007400 0.033336 0.012484 +v 0.008556 0.033266 0.017233 +v 0.033252 0.009051 0.007037 +v 0.015351 -0.031489 0.032850 +v -0.017994 0.030537 0.052021 +v 0.027483 0.022078 0.038088 +v 0.022977 -0.027640 0.038781 +v -0.003859 0.058383 0.015513 +v -0.003086 -0.024580 0.018032 +v -0.014427 0.031250 0.016062 +v -0.019417 0.028221 0.039103 +v 0.006779 -0.016788 -0.024676 +v -0.017414 -0.031246 0.026729 +v -0.012893 -0.034928 0.051762 +v 0.030285 -0.018514 0.051265 +v -0.034310 -0.011185 0.044619 +v -0.004155 0.054142 0.025033 +v 0.000592 -0.036068 0.030332 +v -0.000469 -0.006028 -0.024720 +v -0.010729 0.033404 0.039051 +v -0.030108 -0.020024 0.040880 +v -0.012206 0.003578 -0.024770 +v -0.032803 -0.003062 -0.011365 +v -0.003798 -0.036356 0.048603 +v -0.005218 -0.035803 0.032062 +v 0.023546 0.024114 0.001161 +v 0.027639 -0.013791 0.017954 +v -0.017572 0.030004 0.025600 +v -0.021122 0.022735 -0.016050 +v -0.003419 -0.032889 -0.012666 +v 0.016659 -0.028739 -0.012996 +v 0.011335 -0.028400 -0.029450 +v 0.010182 -0.035008 0.047174 +v 0.031742 0.008248 0.017716 +v -0.033861 -0.007185 0.003076 +v -0.017312 -0.017747 0.018745 +v -0.020953 -0.025165 -0.013137 +v -0.013545 -0.033270 0.030133 +v 0.006408 -0.010317 -0.024728 +v -0.006843 0.031182 -0.003001 +v 0.003382 -0.008681 0.018686 +v 0.034552 -0.000465 0.030887 +v -0.032568 0.002177 -0.002378 +v -0.000862 0.042319 0.046244 +v -0.003991 0.047641 0.000630 +v -0.029531 0.017177 0.002978 +v -0.029689 0.013724 -0.006228 +v 0.034658 -0.001701 0.036207 +v -0.029335 -0.018559 0.027649 +v 0.027609 0.021359 0.027331 +v -0.028688 0.013259 -0.016192 +v -0.002430 0.035983 0.017132 +v 0.000010 0.006725 -0.024686 +v 0.005247 -0.025862 -0.028608 +v 0.022852 -0.022011 -0.015965 +v -0.014599 -0.032101 0.010303 +v 0.001279 0.054300 0.031242 +v -0.029091 0.020071 0.037239 +v -0.035644 -0.005939 0.047114 +v -0.021619 -0.000581 0.018311 +v 0.028170 -0.002662 0.018720 +v -0.025242 0.022455 0.001022 +v -0.024782 0.015233 0.016113 +v -0.013745 -0.032688 0.042600 +v -0.003326 -0.032265 0.016051 +v 0.028423 0.020554 0.031827 +v -0.014463 -0.028045 0.016241 +v -0.033620 -0.012711 0.039712 +v 0.034040 -0.008108 0.041628 +v 0.002133 0.034889 0.030139 +v -0.032262 0.014999 0.043750 +v -0.022818 -0.028104 0.040350 +v 0.021314 0.010574 0.018866 +v -0.012252 -0.023738 -0.028897 +v -0.004798 0.058065 0.022753 +v -0.026627 -0.017712 0.018692 +v 0.011032 -0.032799 0.020341 +v 0.019662 0.005928 -0.026798 +v 0.001322 -0.035280 0.005413 +v 0.028380 0.011867 -0.016758 +v 0.022635 0.026157 0.020193 +v 0.025262 -0.026407 0.052102 +v 0.018102 -0.031369 0.041588 +v 0.009286 0.017897 -0.026372 +v -0.000831 0.058978 0.038451 +v 0.018383 -0.031314 0.047038 +v -0.011019 0.008246 -0.024731 +v -0.003989 -0.025639 -0.028786 +v 0.009567 0.033502 0.026211 +v 0.016921 0.030054 0.018480 +v 0.002907 0.029244 0.015334 +v -0.021877 0.026464 0.014551 +v -0.031651 -0.014344 0.004835 +v -0.031168 -0.009690 -0.003313 +v 0.022331 0.027002 0.033806 +v 0.003880 -0.034976 0.034114 +v -0.014060 0.007216 0.017864 +v 0.016229 0.016432 0.017785 +v 0.025715 -0.009622 -0.029167 +v -0.026872 0.006495 -0.020512 +v -0.018883 0.026170 -0.011749 +v -0.018283 0.009941 -0.027090 +v 0.004161 -0.035405 0.049374 +v -0.001468 0.052212 0.001257 +v 0.018643 -0.015129 -0.021963 +v -0.034749 0.011118 0.051517 +v -0.022071 0.026532 0.047241 +v -0.006001 0.029249 0.015281 +v -0.011584 -0.031083 -0.006573 +v 0.028908 -0.015954 -0.013165 +v 0.020878 0.029338 0.051768 +v -0.022017 -0.013738 -0.030144 +v -0.033487 0.009059 0.013315 +v -0.014332 -0.006419 0.018544 +v -0.031090 -0.000923 -0.017580 +v -0.008628 0.023135 -0.028304 +v 0.006667 -0.023157 0.017911 +v 0.017825 -0.010581 0.019425 +v 0.022147 -0.014931 -0.028951 +v 0.006104 0.021995 0.017013 +v -0.000154 0.057923 0.007803 +v 0.012564 0.031598 0.032149 +v -0.026515 -0.022851 0.008655 +v -0.008408 0.033049 0.006009 +v 0.027366 0.017446 -0.010325 +v 0.015196 0.011938 -0.024692 +v 0.004729 -0.035523 0.023840 +v -0.034448 0.006146 0.022414 +v 0.016668 -0.020806 -0.028764 +v -0.001317 0.034989 0.032852 +v 0.028040 0.020658 0.022968 +v -0.018104 -0.030072 0.035400 +v -0.023770 -0.025285 0.025614 +v -0.028241 0.018704 0.024113 +v 0.010112 0.028376 0.016880 +v -0.001108 0.052140 0.006255 +v 0.031556 -0.007818 -0.003176 +v -0.008517 0.020338 0.017182 +v -0.030206 0.009367 0.016803 +v -0.011825 -0.003410 -0.024743 +v -0.001130 0.045906 0.004021 +v 0.027941 0.004097 -0.019996 +v -0.002052 -0.033271 -0.004004 +v -0.030734 -0.004786 0.015277 +v 0.022181 -0.028656 0.047586 +v -0.026801 0.018039 -0.011897 +v -0.017109 0.022825 -0.019653 +v -0.029143 -0.000824 0.016830 +v -0.023070 0.014414 -0.028704 +v -0.001362 0.052379 0.041755 +v -0.011255 -0.011983 0.018473 +v -0.022747 0.010805 -0.021631 +v -0.023336 -0.014324 0.019268 +v -0.013738 -0.030160 -0.013541 +v -0.034696 0.000088 0.010120 +v -0.004659 0.012377 0.017501 +v 0.024108 0.005245 0.019738 +v 0.032067 0.011878 0.026398 +v 0.033905 -0.008662 0.015709 +v 0.021216 0.023581 -0.009987 +v -0.035154 0.006919 0.046695 +v -0.008289 0.034308 0.046129 +v 0.003991 -0.032865 -0.013273 +v 0.008355 0.009505 -0.024745 +v -0.026444 -0.025000 0.048417 +v 0.002853 -0.019172 0.018047 +v -0.015279 0.017524 -0.022170 +v 0.014451 0.001699 0.019106 +v 0.007749 0.032701 0.000987 +v -0.030933 -0.019128 0.048163 +v -0.021579 -0.008103 0.018796 +v 0.011144 -0.033381 0.036057 +v -0.002909 0.003059 0.018476 +v -0.035456 0.000881 0.033268 +v -0.017540 0.014594 0.017513 +v -0.035352 -0.005044 0.036556 +v 0.030706 -0.016006 0.029135 +v -0.026332 -0.020935 0.000195 +v -0.004721 0.000082 -0.024725 +v -0.003969 0.053794 0.009336 +v -0.008044 -0.010021 -0.024710 +v -0.016377 -0.030470 0.000612 +v 0.017908 0.028208 0.000674 +v -0.000968 -0.006517 0.018708 +v -0.017302 -0.000999 0.018199 +v 0.000561 0.015007 0.017319 +v -0.035112 0.001745 0.025903 +v 0.023092 -0.026852 0.016080 +v 0.009291 -0.001012 0.019053 +v -0.003974 -0.001082 0.018649 +v 0.006728 0.030908 -0.009947 +v 0.008971 -0.031501 -0.013783 +v 0.014784 -0.026571 -0.031124 +v 0.004164 -0.003766 0.018874 +v -0.001736 -0.014286 -0.024806 +v -0.013798 -0.022410 0.018079 +v 0.030376 0.015363 0.024177 +v -0.034001 -0.002191 0.017930 +v 0.001412 -0.018417 -0.025106 +v -0.001533 0.025027 -0.030245 +v -0.025962 0.008608 -0.030280 +v 0.028911 -0.021025 0.036731 +v -0.034152 -0.007704 0.014089 +v -0.023295 0.022417 0.014048 +v -0.013299 -0.002314 0.018516 +v 0.020822 0.026693 0.027136 +v -0.011457 -0.033344 0.038730 +v -0.011997 0.032396 0.020756 +v -0.008089 0.000375 0.018501 +v 0.014695 0.023546 -0.028865 +v -0.030981 0.004789 -0.016094 +v 0.030356 0.016743 0.015366 +v -0.034158 -0.009786 0.027059 +v -0.026510 0.006601 0.018078 +v 0.021995 0.018537 0.016317 +v 0.018400 0.028990 0.013483 +v -0.024921 -0.008793 -0.028805 +v 0.012172 0.031917 0.008624 +v 0.028552 -0.019910 0.004370 +v -0.026572 -0.023269 0.042343 +v -0.005077 -0.005103 0.018680 +v 0.003434 0.009717 0.018041 +v 0.015571 0.005732 0.018865 +v -0.034346 -0.013188 0.052009 +v -0.005831 0.008415 0.017944 +v 0.032995 0.000857 -0.004887 +v 0.033620 0.006402 0.024174 +v 0.019406 0.018228 -0.028822 +v 0.033549 -0.013279 0.046814 +v -0.025023 0.024658 0.033472 +v -0.023534 -0.025631 0.001712 +v 0.002317 0.033430 0.020089 +v 0.011880 -0.033926 0.051794 +v -0.015420 0.011761 -0.024716 +v -0.017113 0.030670 0.036691 +v 0.005815 0.017593 0.017010 +v 0.011526 0.007060 0.018590 +v -0.021004 0.027954 0.030583 +v -0.032997 0.010095 0.009314 +v -0.031703 0.006491 -0.002179 +v -0.003247 -0.027950 -0.020728 +v 0.024066 0.024546 0.009973 +v 0.033887 0.007002 0.034546 +v -0.015471 0.030661 0.044239 +v 0.034867 -0.011222 0.050659 +v -0.024539 0.023907 0.005493 +v 0.021474 0.026379 0.003901 +v -0.007850 -0.032132 -0.001952 +v 0.017526 -0.029776 0.000456 +v 0.014248 0.028905 -0.009277 +v -0.012959 0.029439 -0.001608 +v 0.017394 -0.030388 0.004585 +v -0.034279 0.000307 0.001334 +v -0.025459 -0.021047 -0.005530 +v 0.024294 -0.018724 -0.017960 +v -0.015625 0.019210 -0.030138 +v 0.028575 -0.010923 -0.017853 +v -0.001370 -0.022153 -0.028205 +v 0.009728 -0.033753 0.005225 +v -0.014706 -0.030176 -0.003101 +v -0.028840 -0.008789 0.016751 +v -0.022839 -0.013065 -0.021414 +v -0.025161 -0.025512 0.034391 +v -0.036116 0.002353 0.052147 +v -0.022182 -0.027705 0.049458 +v 0.006737 -0.034685 0.008727 +v 0.003602 0.031641 -0.002217 +v -0.035122 -0.006433 0.051708 +v 0.005387 -0.033419 -0.000026 +v 0.025087 0.012436 0.017982 +v 0.030733 -0.008584 -0.014964 +v 0.017136 -0.026985 -0.016636 +v 0.033746 0.001215 0.016486 +v 0.030666 0.010165 -0.001816 +v 0.034975 0.007483 0.047606 +v -0.029726 -0.013940 -0.010378 +v -0.007744 -0.034060 0.024644 +v -0.020440 -0.027579 0.017789 +v 0.004993 -0.027899 -0.020501 +v -0.020625 -0.002182 -0.025541 +v -0.001744 0.054157 0.035790 +v 0.023148 -0.004700 -0.021960 +v 0.001516 0.029960 -0.017913 +v -0.020831 -0.021703 -0.018733 +v -0.034569 -0.003367 0.032516 +v 0.015709 0.030859 0.024516 +v 0.001779 0.037773 0.019006 +v -0.001120 0.033892 0.004285 +v -0.010278 0.016613 -0.024746 +v 0.001061 -0.034975 0.026386 +v 0.019274 0.025419 -0.006927 +v 0.015459 0.004224 -0.024771 +v 0.029765 -0.020597 0.042189 +v -0.026002 -0.021665 0.016718 +v -0.022319 -0.007414 -0.022087 +v 0.011031 -0.003252 -0.024817 +v 0.002627 0.021953 -0.023364 +v 0.001107 -0.036429 0.046699 +v -0.028452 0.021205 0.047010 +v 0.034886 0.003776 0.050881 +v 0.030781 0.015230 0.032093 +v 0.008819 0.028694 -0.017395 +v -0.034058 -0.003156 0.022014 +v -0.016968 0.026474 0.016510 +v -0.030888 0.014028 0.000909 +v 0.012476 -0.030655 -0.004863 +v 0.031358 -0.015838 0.018084 +v -0.027116 0.021663 0.020516 +v -0.015690 0.031864 0.048339 +v -0.014236 -0.032016 0.004060 +v 0.018296 -0.029939 0.035570 +v -0.035171 -0.001614 0.047967 +v -0.019477 0.027588 0.000963 +v 0.013354 0.033016 0.052026 +v -0.031539 0.012957 0.027783 +v -0.004127 0.022015 -0.023185 +v 0.023524 -0.022601 -0.011784 +v 0.000946 0.037516 0.025817 +v -0.006695 -0.034667 0.009236 +v -0.002091 0.037623 0.039879 +v 0.014231 0.031010 0.005313 +v 0.025863 -0.001690 -0.028912 +v 0.034699 -0.005232 0.019418 +v 0.015189 -0.002463 -0.024812 +v -0.028539 -0.013301 0.017383 +v 0.030044 -0.018408 0.022392 +v -0.033124 -0.010357 0.005337 +v 0.016432 -0.029151 -0.004598 +v 0.010495 -0.033158 0.000766 +v 0.009797 0.033971 0.042536 +v 0.031602 -0.014093 0.002210 +v -0.028486 0.013303 0.015851 +v 0.022023 -0.026947 0.029996 +v 0.006172 0.021026 -0.026855 +v -0.013148 0.027819 -0.016614 +v -0.034973 0.001364 0.041979 +v -0.028291 -0.020305 0.004352 +v -0.014846 -0.026925 -0.018571 +v 0.013215 -0.026897 -0.019137 +v -0.002446 0.032256 -0.003906 +v 0.027033 -0.020397 0.015250 +v 0.018932 -0.006552 0.019840 +v 0.021466 -0.007411 -0.027155 +v 0.028209 0.020038 0.017347 +v 0.001341 0.034435 0.046976 +v -0.001203 0.036861 0.008193 +v -0.032442 -0.014346 0.048744 +v -0.001523 -0.036356 0.040236 +v 0.031101 0.014771 0.007605 +v 0.000894 0.049065 0.048235 +v -0.001609 -0.023640 -0.022632 +v -0.011848 0.031967 0.004519 +v -0.002372 0.020378 0.016831 +v -0.001364 0.040170 0.003473 +v -0.032863 0.014611 0.047578 +v 0.001675 0.027076 -0.020525 +v 0.011654 0.024657 0.017436 +v -0.006041 0.026316 -0.028837 +v 0.000790 0.054166 0.015247 +v -0.004277 0.044663 0.048449 +v 0.033013 0.013097 0.040499 +v -0.033850 0.002032 0.017844 +v -0.028636 -0.016912 -0.007768 +v 0.032323 0.003382 -0.011775 +v 0.024724 0.025179 0.039433 +v -0.025623 -0.018896 -0.016674 +v 0.018023 0.009880 -0.027108 +v 0.002341 -0.030624 -0.018475 +v 0.009444 0.033910 0.051860 +v 0.006611 0.030265 0.015742 +v 0.030644 -0.016502 0.034200 +v 0.005242 0.023549 -0.030134 +v -0.031771 -0.007211 -0.010397 +v -0.034153 0.010081 0.042146 +v -0.001465 0.058673 0.024996 +v -0.034125 -0.005675 0.029036 +v -0.018888 0.028514 0.008292 +v -0.015872 -0.032441 0.051988 +v 0.034522 -0.004880 0.013449 +v -0.034311 -0.008366 0.021500 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_1.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_1.obj new file mode 100644 index 0000000000000000000000000000000000000000..935b798e96004233077e2f579b61f14a220d7578 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_1.obj @@ -0,0 +1,1028 @@ +o kp.000 +v -0.000500 -0.000500 0.064500 +v -0.000500 0.000500 0.064500 +v -0.000500 0.000500 0.063500 +v -0.000500 -0.000500 0.063500 +v 0.000500 0.000500 0.063500 +v 0.000500 -0.000500 0.063500 +v 0.000500 0.000500 0.064500 +v 0.000500 -0.000500 0.064500 +o kp.001 +v -0.000500 -0.000500 -0.024500 +v -0.000500 0.000500 -0.024500 +v -0.000500 0.000500 -0.025500 +v -0.000500 -0.000500 -0.025500 +v 0.000500 0.000500 -0.025500 +v 0.000500 -0.000500 -0.025500 +v 0.000500 0.000500 -0.024500 +v 0.000500 -0.000500 -0.024500 +o kp.002 +v -0.001500 0.055500 0.057500 +v -0.001500 0.056500 0.057500 +v -0.001500 0.056500 0.056500 +v -0.001500 0.055500 0.056500 +v -0.000500 0.056500 0.056500 +v -0.000500 0.055500 0.056500 +v -0.000500 0.056500 0.057500 +v -0.000500 0.055500 0.057500 +o mesh +v 0.003764 -0.030077 -0.010857 +v -0.003290 0.055737 0.055526 +v -0.028507 -0.023382 0.066125 +v 0.035017 -0.002073 0.045331 +v -0.007038 0.027657 0.002294 +v -0.029552 -0.011158 0.019045 +v 0.023777 0.008001 -0.024354 +v 0.005130 -0.034262 0.035223 +v -0.026616 -0.001093 -0.025259 +v -0.028605 0.020780 0.066196 +v 0.021550 0.027902 0.066225 +v 0.029171 -0.010059 0.008383 +v 0.023840 -0.029785 0.066228 +v 0.014636 0.025520 0.031092 +v -0.019173 0.020747 0.033527 +v -0.000859 -0.007071 0.007646 +v -0.004864 0.047306 0.026819 +v -0.003333 0.019125 -0.025354 +v -0.033063 -0.002177 0.046856 +v 0.019304 0.016604 0.003127 +v -0.003440 -0.037893 0.065935 +v -0.026091 0.008442 0.000731 +v -0.019167 -0.024531 0.040488 +v 0.001847 -0.007985 -0.024365 +v -0.007715 -0.031074 0.012661 +v -0.020146 -0.016285 -0.006121 +v -0.008248 0.031347 0.053373 +v 0.023271 -0.018753 0.031601 +v 0.030793 0.008774 0.023164 +v 0.021273 -0.014690 -0.013101 +v 0.035856 0.008933 0.065890 +v 0.014089 -0.026040 0.009547 +v 0.035975 -0.012242 0.065350 +v 0.025144 0.017178 0.047358 +v -0.035666 0.001693 0.066193 +v -0.031658 0.006256 0.028752 +v 0.011022 0.031580 0.049439 +v -0.015278 -0.017230 -0.025184 +v -0.009013 0.010454 0.010710 +v -0.006203 0.028670 0.021499 +v 0.029731 0.003012 -0.005620 +v 0.008563 0.024834 -0.010374 +v 0.018377 -0.027302 0.047920 +v 0.004426 0.034581 0.066216 +v -0.027842 0.015678 0.048645 +v -0.018400 0.013851 -0.014691 +v 0.008691 0.028147 0.011665 +v -0.006243 -0.035139 0.048667 +v 0.010724 -0.022869 -0.025203 +v 0.002589 0.056463 0.039422 +v -0.017016 -0.022313 0.023651 +v 0.014746 -0.000956 0.007309 +v -0.000335 0.030916 0.036870 +v -0.001940 0.040899 0.011297 +v 0.032478 -0.007305 0.024558 +v -0.010769 0.002238 -0.024335 +v -0.029699 -0.013555 0.035091 +v -0.022166 0.015376 0.018768 +v -0.030439 -0.017142 0.051536 +v 0.030506 -0.017232 0.049613 +v -0.017238 -0.005935 0.010696 +v -0.004124 -0.028202 -0.025079 +v 0.008222 0.006456 -0.024452 +v 0.011205 -0.035368 0.059035 +v -0.019052 -0.030647 0.056055 +v -0.009621 -0.026913 -0.002471 +v -0.016457 0.030204 0.066300 +v -0.028613 -0.003158 -0.010244 +v 0.026040 -0.006951 -0.025190 +v 0.019442 0.018970 0.018436 +v 0.005245 -0.032792 0.019968 +v -0.006986 0.025874 -0.012487 +v 0.005495 0.011811 0.008240 +v -0.018013 -0.020539 0.008568 +v -0.009101 -0.032595 0.031726 +v 0.029851 0.007228 0.008337 +v -0.030776 0.002887 0.014674 +v 0.001478 0.042046 0.053709 +v -0.028830 -0.009131 0.002738 +v 0.018573 0.014916 -0.012266 +v 0.010621 0.020573 -0.023937 +v 0.031969 0.009708 0.036891 +v 0.020089 -0.018183 0.000195 +v 0.022153 -0.019149 0.018102 +v 0.003329 -0.031491 0.003466 +v -0.033330 -0.011001 0.062963 +v -0.016261 0.018377 0.000140 +v 0.014798 -0.028299 0.028506 +v -0.018495 0.024915 0.048288 +v 0.029341 0.019777 0.059726 +v 0.032391 -0.011647 0.037163 +v -0.002414 -0.020049 0.009206 +v -0.011772 -0.023022 -0.014602 +v -0.002404 0.021289 0.012123 +v 0.036299 -0.000733 0.058017 +v 0.002233 0.037557 0.024347 +v 0.033923 0.008901 0.050660 +v 0.014354 -0.010411 -0.024477 +v 0.008873 -0.015340 0.006975 +v 0.027582 -0.009577 -0.004084 +v -0.023287 -0.011354 -0.018223 +v 0.007631 -0.035047 0.047511 +v -0.033126 0.011378 0.059457 +v 0.023593 0.017164 0.032448 +v 0.013809 -0.023090 -0.009335 +v -0.011675 0.029481 0.039657 +v -0.013933 0.022807 0.013075 +v -0.014739 -0.033983 0.066322 +v -0.032325 0.007899 0.040195 +v -0.020138 0.009415 -0.025233 +v 0.019840 0.025987 0.054320 +v 0.005804 0.028019 0.000508 +v 0.017551 0.024677 0.042924 +v 0.030223 -0.022008 0.060644 +v -0.032170 -0.004906 0.027988 +v -0.019759 0.004964 0.011131 +v 0.028836 0.000004 -0.017051 +v 0.032746 -0.001125 0.033470 +v -0.006230 0.032902 0.063977 +v -0.004367 0.051086 0.045827 +v 0.030650 -0.001629 0.014919 +v 0.008203 0.028412 0.022409 +v -0.003297 -0.017505 -0.024363 +v 0.001543 0.026662 -0.019561 +v -0.024470 0.023864 0.056974 +v 0.002347 0.047106 0.034698 +v 0.016958 0.000042 -0.024503 +v -0.025740 0.007076 -0.009556 +v -0.002098 0.008867 -0.024396 +v 0.012844 0.031172 0.061213 +v 0.001403 -0.036689 0.055992 +v -0.015011 0.021951 0.024154 +v 0.023816 -0.019909 0.041819 +v -0.000367 0.033823 0.047276 +v 0.010014 0.030786 0.039269 +v -0.017322 -0.006759 -0.025097 +v 0.019071 -0.010754 0.007813 +v -0.013287 0.017614 -0.022591 +v -0.035049 -0.003176 0.056777 +v 0.010618 -0.024229 0.000120 +v -0.008626 0.000596 0.008975 +v -0.025123 -0.016583 0.026197 +v -0.026278 0.013824 0.034738 +v 0.003550 0.032728 0.056529 +v -0.022221 -0.023109 0.050477 +v -0.008716 -0.034546 0.058214 +v 0.013673 -0.031304 0.039186 +v 0.023296 -0.028742 0.056439 +v -0.021659 -0.016726 0.016877 +v -0.018855 0.015366 0.009114 +v -0.014192 -0.029514 0.047675 +v 0.020168 0.007734 0.008084 +v -0.010801 -0.029518 0.021855 +v 0.024293 0.010780 -0.003770 +v -0.004843 0.054253 0.033529 +v -0.010686 -0.014570 0.010369 +v 0.030832 -0.001703 0.002671 +v 0.011146 0.019911 0.006944 +v 0.025397 0.008260 -0.013298 +v -0.007828 -0.007554 -0.024374 +v -0.010796 0.028726 0.029847 +v 0.034952 -0.009675 0.053320 +v 0.014214 -0.025943 0.019313 +v -0.033244 -0.003307 0.037297 +v 0.004546 -0.028824 -0.021154 +v -0.033651 0.006834 0.049720 +v -0.004716 -0.029205 -0.015452 +v -0.029464 -0.000374 -0.001315 +v 0.028575 -0.012374 0.017527 +v 0.014914 0.019626 -0.004526 +v -0.002743 -0.034806 0.040041 +v -0.028919 -0.005374 0.011126 +v 0.026178 0.012119 0.015973 +v 0.002927 0.055916 0.048559 +v -0.032405 -0.011294 0.044783 +v -0.001636 -0.033724 0.026576 +v 0.001436 0.033750 0.016090 +v -0.010197 -0.024707 0.006452 +v 0.017630 0.014412 -0.021308 +v 0.005592 -0.036949 0.066303 +v -0.017155 0.029247 0.056699 +v 0.005717 -0.000192 0.007156 +v 0.000132 0.027767 -0.007276 +v -0.025739 -0.018715 0.042566 +v -0.013763 0.019522 -0.008415 +v -0.005139 0.040169 0.019931 +v -0.026542 0.004725 -0.018159 +v -0.007149 0.028727 0.012424 +v -0.021719 0.018357 0.042915 +v 0.023383 -0.001543 0.008788 +v -0.028358 0.009687 0.021301 +v 0.016434 -0.034488 0.066173 +v -0.020948 0.012868 -0.004811 +v -0.000361 0.030078 0.028161 +v 0.006929 -0.030572 0.011632 +v -0.022230 -0.029412 0.066344 +v 0.017070 -0.017712 -0.020663 +v -0.016058 -0.026212 0.032589 +v -0.013934 -0.023858 0.015435 +v 0.003223 0.050231 0.056859 +v -0.027741 -0.022775 0.057552 +v -0.001745 -0.030738 -0.004280 +v 0.037037 -0.003802 0.066233 +v 0.020074 -0.019972 0.009844 +v -0.023089 -0.013501 0.009122 +v 0.028076 -0.007715 -0.012351 +v -0.016450 -0.020722 0.000094 +v 0.005195 -0.023148 0.007306 +v 0.023453 0.014407 0.024257 +v 0.018817 -0.025501 0.036007 +v -0.025829 0.010657 0.012119 +v 0.026734 -0.013996 0.025518 +v 0.004994 0.014415 -0.024413 +v -0.000277 0.029134 0.006923 +v -0.022143 -0.019103 0.034957 +v -0.012100 -0.030950 0.039800 +v -0.018121 -0.017008 -0.014083 +v 0.007094 -0.015567 -0.024403 +v 0.019146 -0.021862 0.025241 +v 0.033766 0.011694 0.058483 +v 0.008159 0.030594 0.031309 +v 0.012057 0.007003 0.007584 +v -0.030130 0.002083 0.006601 +v -0.026683 -0.010021 -0.006364 +v 0.009086 -0.001868 -0.024424 +v -0.022859 0.014411 0.026761 +v 0.000130 -0.000114 -0.024412 +v 0.011457 -0.024154 -0.017309 +v 0.032719 -0.010820 0.045337 +v 0.012325 0.020350 -0.015798 +v -0.008218 0.023299 -0.020229 +v -0.003840 0.037054 0.056912 +v 0.031642 0.000581 0.024138 +v 0.032043 0.015894 0.066090 +v 0.012205 0.023397 0.016914 +v 0.021864 0.018504 0.040306 +v 0.027271 0.001020 -0.025284 +v -0.003813 0.046789 0.057396 +v 0.017970 0.019102 0.010702 +v -0.004696 -0.031005 0.002959 +v -0.002083 0.007517 0.008583 +v -0.009889 -0.023476 -0.022725 +v -0.023013 0.026393 0.064453 +v 0.008431 -0.033002 0.028311 +v 0.024736 -0.022772 0.048958 +v 0.030760 0.012269 0.044095 +v -0.031637 -0.001962 0.020605 +v -0.011473 0.010342 -0.024395 +v 0.032712 -0.014875 0.058468 +v -0.013668 -0.022355 -0.007078 +v -0.028685 0.017677 0.058430 +v 0.034171 0.005330 0.043734 +v 0.015423 -0.033128 0.053116 +v -0.012487 0.023035 0.005616 +v -0.022264 -0.015411 0.001111 +v -0.018204 0.001108 -0.025245 +v 0.031585 0.005585 0.029983 +v 0.030109 0.015060 0.052824 +v 0.025390 -0.013062 0.002617 +v -0.033380 -0.011037 0.054796 +v 0.024637 -0.010237 -0.018583 +v 0.007837 -0.029751 -0.004127 +v 0.018506 0.020977 0.025592 +v 0.002357 0.045945 0.025657 +v -0.000336 -0.031645 0.015208 +v 0.029359 0.006446 0.000973 +v 0.027348 0.023033 0.066090 +v 0.008331 -0.007964 0.007382 +v -0.007298 0.026560 -0.005122 +v -0.035010 0.003949 0.058619 +v -0.016855 0.024164 0.039618 +v -0.012606 0.030374 0.047534 +v 0.029903 0.005531 0.016264 +v -0.005333 0.032041 0.042188 +v -0.025390 -0.008235 -0.024697 +v -0.032599 0.014360 0.066050 +v 0.002395 0.048742 0.049809 +v 0.014294 -0.019559 0.004316 +v -0.003976 0.040184 0.027454 +v 0.025408 0.021452 0.053125 +v 0.015340 0.007357 -0.024636 +v -0.021425 0.013611 0.002653 +v -0.027752 -0.003386 -0.018563 +v -0.030243 -0.011591 0.026307 +v 0.002149 0.053962 0.032087 +v 0.002454 -0.021586 -0.025415 +v -0.004665 0.056449 0.040307 +v 0.004952 0.019036 0.010336 +v 0.023936 -0.014011 0.011857 +v -0.004800 0.046708 0.033909 +v -0.031488 -0.017180 0.059962 +v -0.027557 0.013730 0.041817 +v 0.021982 -0.015199 -0.005962 +v 0.001934 0.035809 0.008279 +v 0.032447 -0.018374 0.066269 +v -0.005287 0.035481 0.014328 +v 0.034344 0.001927 0.051484 +v -0.001405 0.014645 0.010179 +v 0.003419 0.021151 -0.025406 +v 0.011970 0.013640 -0.025294 +v 0.036179 -0.007499 0.060266 +v -0.007393 -0.028046 -0.009157 +v 0.020828 -0.012890 -0.024714 +v -0.036234 -0.005165 0.065392 +v 0.024669 0.011771 0.004738 +v 0.005533 0.031343 0.044697 +v 0.028293 0.012410 0.030877 +v 0.031279 -0.011630 0.030049 +v -0.005288 0.036713 0.007049 +v 0.001808 -0.015000 0.007459 +v -0.010136 0.017203 0.012475 +v -0.000156 -0.027300 0.007780 +v 0.018251 0.020972 0.034594 +v 0.009614 -0.029819 0.005261 +v -0.011972 -0.033791 0.052334 +v 0.017485 -0.031929 0.060074 +v -0.023136 0.019920 0.050812 +v -0.009489 -0.006033 0.009096 +v 0.014119 -0.032722 0.046578 +v 0.001206 -0.035917 0.049401 +v 0.011655 0.023458 -0.000211 +v -0.002506 0.025692 -0.025045 +v 0.034250 -0.005865 0.039954 +v -0.004388 -0.032835 0.020301 +v 0.002014 0.040212 0.017363 +v -0.012436 0.030958 0.061108 +v -0.031659 0.003408 0.034698 +v 0.029871 -0.003545 -0.006150 +v 0.016285 -0.019634 -0.014424 +v 0.012829 0.013489 0.006829 +v -0.025093 -0.000049 0.011511 +v 0.007721 0.024226 -0.018419 +v -0.002311 0.050166 0.038898 +v 0.027289 -0.016879 0.036431 +v -0.020319 -0.013124 -0.024354 +v 0.028260 -0.024741 0.066257 +v -0.001008 -0.033421 0.033130 +v -0.010585 0.025161 0.018156 +v 0.031407 -0.003964 0.008803 +v -0.011358 0.021117 -0.014231 +v -0.022062 0.009481 -0.017695 +v 0.027789 -0.021489 0.054714 +v 0.029805 -0.008257 0.002244 +v -0.034141 0.008127 0.065820 +v -0.031883 -0.017320 0.066367 +v -0.023341 -0.012478 -0.011243 +v 0.003995 -0.035090 0.042255 +v 0.002489 0.051327 0.043986 +v 0.021279 0.022898 0.048495 +v -0.022664 -0.027071 0.060437 +v -0.004969 -0.012292 0.008759 +v 0.019488 -0.005714 -0.025434 +v -0.011456 0.022860 -0.002056 +v -0.024902 0.005247 -0.024679 +v 0.035666 0.005654 0.058868 +v -0.018461 0.018541 0.014712 +v -0.031926 0.012661 0.053369 +v 0.015401 0.030435 0.055044 +v -0.016804 -0.012239 0.010947 +v -0.003869 0.047433 0.050943 +v 0.026431 0.013552 0.036790 +v 0.019378 -0.024506 0.042196 +v -0.007656 0.030897 0.035028 +v 0.023624 0.026053 0.060590 +v -0.015225 0.009250 0.010453 +v 0.009620 0.026258 0.005162 +v 0.013558 0.025248 0.023197 +v 0.036038 0.002366 0.065868 +v 0.015655 -0.022236 -0.002967 +v 0.021487 0.013969 0.011092 +v 0.019894 0.014661 -0.005864 +v -0.003225 0.034287 0.020591 +v -0.019701 -0.020604 0.028978 +v 0.002893 0.027069 -0.013528 +v 0.015336 0.027170 0.048903 +v -0.002369 0.028646 0.016643 +v -0.013136 -0.011490 -0.024350 +v 0.002877 0.024843 0.010496 +v -0.014410 0.025731 0.034184 +v -0.027954 0.010962 0.027351 +v 0.034263 0.002088 0.038465 +v -0.027138 -0.008318 -0.013641 +v -0.032586 0.001593 0.042057 +v -0.013847 -0.027340 0.026695 +v 0.011985 -0.031967 0.033348 +v 0.010952 -0.031334 0.022998 +v 0.027180 0.005448 -0.019980 +v 0.031914 -0.006957 0.017608 +v 0.017236 -0.023534 0.014083 +v -0.001764 0.032499 0.053015 +v -0.004252 0.056418 0.049592 +v -0.001539 0.028179 -0.001486 +v -0.008311 0.015662 -0.025404 +v 0.003306 0.036669 0.051115 +v 0.007490 -0.028421 -0.015788 +v 0.012944 -0.016318 -0.025534 +v 0.004348 0.028566 0.016913 +v 0.002976 0.056051 0.054559 +v -0.009148 -0.036081 0.066366 +v -0.030514 0.003195 0.023383 +v -0.028665 0.002905 -0.006461 +v -0.030947 -0.008122 0.033053 +v 0.010591 0.033472 0.066188 +v 0.007983 -0.035538 0.053386 +v 0.014433 0.026833 0.038397 +v 0.009974 -0.029948 0.017356 +v -0.004521 0.003494 -0.024335 +v -0.011494 0.027032 0.023660 +v -0.033997 -0.007396 0.049394 +v 0.003294 0.005405 0.007624 +v -0.015465 -0.033197 0.059902 +v 0.032366 -0.006957 0.033571 +v -0.002771 0.037911 0.051066 +v -0.018904 -0.026043 0.046121 +v -0.008885 -0.015857 -0.024475 +v 0.006096 0.027405 -0.005279 +v 0.028880 0.001267 0.008393 +v 0.035746 -0.003880 0.053159 +v -0.021718 0.011175 -0.010340 +v -0.008783 -0.020011 0.009790 +v 0.015834 0.030761 0.066156 +v -0.025734 -0.018892 0.048633 +v 0.021187 -0.015827 0.005975 +v -0.027262 0.008295 0.007045 +v -0.000529 0.033395 0.063270 +v -0.002973 -0.036705 0.059746 +v 0.001140 -0.029754 -0.015980 +v 0.009628 0.031591 0.056459 +v -0.015803 -0.018421 -0.019151 +v -0.023545 -0.006928 0.009834 +v 0.023661 -0.007319 0.008063 +v -0.029226 0.008953 0.033192 +v 0.028168 -0.005788 -0.019174 +v -0.025994 -0.012279 0.014722 +v 0.017708 -0.019362 -0.007483 +v 0.008957 -0.027844 -0.010098 +v 0.019004 0.029367 0.061010 +v -0.018322 0.012759 -0.021010 +v -0.004652 -0.035921 0.054373 +v 0.014233 0.018614 0.001538 +v 0.028890 0.003810 -0.012782 +v -0.033739 0.000721 0.052858 +v -0.007447 -0.031562 0.026393 +v 0.021917 0.011054 -0.016805 +v -0.009971 -0.033661 0.044684 +v -0.011573 -0.027153 0.011341 +v 0.028414 -0.015899 0.044559 +v -0.033518 -0.005797 0.042573 +v -0.032475 0.000337 0.029969 +v 0.022865 -0.017745 0.023489 +v -0.017789 0.018440 0.020776 +v -0.022844 0.017642 0.036991 +v -0.028739 -0.010455 0.008777 +v -0.030132 -0.004418 0.005753 +v -0.028118 0.000598 -0.014668 +v 0.004261 -0.036006 0.060964 +v -0.000072 0.042326 0.022171 +v 0.000616 0.043477 0.030838 +v -0.031779 0.010226 0.045229 +v -0.005838 -0.002356 -0.024316 +v 0.025154 -0.011322 -0.009293 +v 0.011021 -0.035728 0.066292 +v -0.015325 0.005789 -0.024459 +v 0.026656 -0.026243 0.060674 +v 0.019332 -0.024024 0.030326 +v -0.008041 0.022750 0.013894 +v 0.006779 0.033737 0.061302 +v -0.016387 0.019184 0.005969 +v -0.021948 0.010736 0.008237 +v 0.003076 0.030539 0.021873 +v -0.029645 -0.014619 0.041407 +v -0.000265 0.048941 0.030251 +v -0.000471 0.014212 -0.024381 +v 0.000835 -0.013358 -0.024368 +v 0.012515 0.021140 -0.009668 +v 0.014128 0.022900 0.011412 +v 0.002782 0.006214 -0.024388 +v -0.030825 -0.006458 0.016612 +v -0.007476 -0.032806 0.036915 +v 0.015315 -0.006835 0.007991 +v -0.007510 0.032221 0.047473 +v 0.005074 0.030610 0.036771 +v -0.003630 -0.001337 0.008176 +v -0.011605 -0.003104 -0.024367 +v 0.010429 0.027377 0.027608 +v -0.018687 -0.021215 0.017336 +v -0.001785 -0.032140 0.010027 +v -0.018679 0.018969 0.028464 +v 0.013933 -0.013499 0.007050 +v 0.003005 0.038025 0.057290 +v 0.011986 0.030219 0.044239 +v 0.008226 -0.010316 -0.024457 +v 0.022551 -0.021756 0.036921 +v -0.031301 -0.007411 0.023122 +v -0.004981 -0.022482 -0.025381 +v -0.001423 0.056643 0.045055 +v 0.024952 0.005297 0.009272 +v -0.029073 -0.004714 -0.004405 +v 0.010079 -0.034031 0.042044 +v -0.008007 -0.026030 -0.018432 +v -0.018993 -0.027023 0.052132 +v -0.027225 0.007381 0.016091 +v 0.022273 0.002866 -0.025467 +v -0.032874 0.007561 0.054936 +v -0.002267 -0.030099 -0.010811 +v -0.011166 0.033137 0.065947 +v -0.025997 -0.011572 -0.001035 +v -0.032389 -0.009033 0.038083 +v 0.033331 -0.004245 0.029111 +v -0.015409 0.026704 0.044362 +v -0.019671 0.025437 0.054024 +v -0.016660 -0.000678 0.010789 +v -0.014910 -0.027355 0.042903 +v 0.019755 0.002298 0.008660 +v -0.004069 -0.011413 -0.024356 +v -0.034741 -0.001498 0.061757 +v -0.017553 0.015839 -0.007493 +v -0.009516 0.020758 -0.025054 +v -0.002865 0.026269 0.010469 +v -0.013573 0.024170 0.028670 +v 0.029405 -0.001608 -0.012105 +v -0.005809 -0.027438 0.007258 +v -0.015666 0.029356 0.051632 +v -0.003942 0.042754 0.053242 +v -0.007252 0.032139 0.058926 +v -0.001565 0.050770 0.054885 +v -0.027024 -0.013865 0.030210 +v 0.021930 -0.025812 0.052118 +v -0.027442 0.004761 0.011144 +v 0.029478 -0.009034 0.013476 +v 0.003512 -0.033895 0.029720 +v 0.004658 0.030837 0.026809 +v -0.019295 0.028495 0.061508 +v 0.019747 0.011452 -0.025004 +v 0.026607 0.010957 0.010939 +v -0.015033 0.016832 -0.017260 +v -0.020311 -0.017118 0.011696 +v -0.021073 -0.019696 0.021804 +v 0.001781 -0.027832 -0.025398 +v 0.020672 -0.014185 -0.019574 +v 0.030140 -0.011593 0.022486 +v -0.014394 0.021421 0.018018 +v -0.025286 -0.013820 0.020140 +v -0.003514 0.026558 -0.018617 +v 0.027976 -0.015295 0.031482 +v -0.024891 0.008779 -0.004789 +v 0.032591 -0.002512 0.020154 +v 0.005954 0.025073 -0.023283 +v 0.013877 -0.025472 0.004463 +v 0.006155 0.031858 0.050973 +v -0.002043 0.027211 -0.011863 +v 0.033341 -0.014507 0.053029 +v -0.005801 0.029678 0.030249 +v -0.011365 -0.028139 0.016449 +v 0.002725 0.050829 0.038714 +v 0.027507 0.007113 -0.007624 +v 0.018676 0.012391 0.005865 +v -0.013208 -0.022546 0.010031 +v -0.009457 0.026499 0.007714 +v -0.025689 0.022177 0.062310 +v -0.009606 0.023692 -0.008757 +v 0.012584 -0.026737 0.014320 +v 0.001719 0.045416 0.057442 +v 0.016582 -0.029196 0.043619 +v 0.003017 -0.031999 0.008458 +v -0.021872 0.013015 0.014341 +v -0.019173 -0.031417 0.062899 +v 0.004750 0.029020 0.008460 +v 0.003488 -0.033375 0.024623 +v -0.028804 -0.015107 0.046317 +v -0.028100 0.018112 0.053479 +v 0.000888 0.000848 0.007738 +v 0.001413 0.029712 0.013074 +v 0.027081 0.012041 0.020856 +v 0.007349 -0.026504 -0.025248 +v 0.022044 0.014846 0.019335 +v -0.029408 0.003682 0.001530 +v -0.013589 -0.025272 0.021671 +v -0.022213 -0.021051 0.045116 +v 0.021994 0.017991 0.027853 +v -0.015702 -0.019846 -0.010806 +v 0.032002 0.004376 0.020571 +v 0.022085 0.011725 -0.010940 +v -0.016185 0.013071 -0.025431 +v -0.024234 0.012085 0.022468 +v 0.011388 0.022946 -0.005252 +v 0.026445 0.014658 0.043366 +v -0.022780 -0.025736 0.055729 +v 0.000940 0.031401 0.041571 +v -0.009604 -0.027634 0.002362 +v 0.011742 0.028659 0.034007 +v 0.019130 -0.022563 0.019846 +v 0.007821 0.022926 0.009686 +v -0.001855 -0.029124 -0.020864 +v 0.015915 0.016927 -0.015823 +v 0.015906 -0.026510 0.024112 +v -0.000976 0.039719 0.006675 +v 0.009518 -0.033617 0.037229 +v 0.035019 -0.007144 0.049170 +v 0.023293 -0.002692 -0.025446 +v 0.003063 -0.030709 -0.004938 +v -0.034716 -0.007868 0.059527 +v -0.002782 -0.006542 -0.024339 +v -0.022176 0.017430 0.031430 +v -0.015642 -0.022203 0.004627 +v 0.015755 0.018594 0.006315 +v 0.012096 -0.025529 -0.005531 +v 0.030320 -0.000233 -0.002088 +v 0.018934 -0.029865 0.053715 +v -0.013163 -0.023579 -0.002433 +v -0.006063 0.014342 0.011408 +v 0.024729 -0.014971 0.018853 +v 0.024455 -0.013228 -0.002318 +v -0.014349 0.018510 0.010288 +v -0.013174 0.002613 0.010284 +v 0.027493 0.012441 0.025994 +v -0.001071 -0.034551 0.044550 +v -0.007288 0.006199 0.009269 +v -0.004717 0.051044 0.029842 +v 0.015103 -0.027453 0.033229 +v 0.011875 0.002045 -0.024454 +v 0.033463 0.003943 0.034107 +v 0.020574 0.014715 -0.001117 +v -0.025613 -0.021494 0.053449 +v 0.009232 0.028351 0.016416 +v -0.005248 0.040231 0.014806 +v 0.030774 0.015392 0.058088 +v 0.019035 -0.020040 0.004453 +v -0.007467 0.007776 -0.024390 +v -0.016245 -0.031052 0.051681 +v -0.029608 -0.004627 0.000795 +v -0.030694 0.005919 0.019497 +v -0.033442 0.005636 0.045134 +v -0.029416 -0.002196 0.015096 +v -0.012813 -0.029470 0.033728 +v 0.013764 -0.021081 -0.021039 +v 0.009767 -0.020549 0.005282 +v 0.004999 0.000516 -0.024413 +v 0.014402 -0.005681 -0.024450 +v -0.019645 -0.018245 0.003841 +v 0.011493 -0.034317 0.050170 +v -0.004984 0.043371 0.023386 +v -0.015748 -0.027379 0.038268 +v 0.019138 0.022426 0.039105 +v 0.000318 -0.036440 0.063504 +v 0.030710 0.012488 0.048795 +v -0.011790 -0.034981 0.062230 +v -0.017804 0.022583 0.044268 +v -0.029491 0.017390 0.063075 +v 0.000197 0.052776 0.050757 +v -0.026621 -0.007861 -0.019356 +v 0.003513 -0.008693 0.007215 +v -0.019830 -0.022747 0.033138 +v -0.001663 0.056318 0.036267 +v -0.008004 -0.031471 0.017305 +v 0.033550 0.008147 0.055461 +v 0.008543 -0.026543 -0.020444 +v 0.028341 -0.001449 -0.021484 +v 0.005007 -0.027725 0.006490 +v -0.006339 -0.029666 -0.004925 +v -0.001173 0.034154 0.012260 +v 0.021647 0.021113 0.044230 +v 0.022530 -0.028689 0.061013 +v -0.032199 -0.013004 0.049085 +v -0.001387 0.029294 0.021872 +v 0.026123 0.009754 0.000805 +v 0.000456 0.041373 0.026658 +v -0.018920 -0.015188 -0.020214 +v -0.011580 0.030753 0.056578 +v 0.028061 -0.005220 0.005885 +v -0.029356 -0.019714 0.063339 +v 0.024732 -0.012513 0.007146 +v -0.019364 0.019931 0.038949 +v 0.001878 0.030507 0.032857 +v -0.003781 0.026519 0.005491 +v 0.031567 0.002449 0.013011 +v 0.021321 -0.017636 0.013848 +v 0.000790 -0.034930 0.037073 +v 0.010029 -0.001735 0.006956 +v -0.022055 -0.001526 -0.025390 +v 0.013351 0.018539 -0.020873 +v -0.025006 0.012742 0.030474 +v 0.016850 0.017244 -0.008100 +v 0.031844 -0.018356 0.055637 +v -0.002826 0.038155 0.023304 +v 0.032177 0.000583 0.028656 +v -0.001233 0.033726 0.058592 +v 0.008199 0.003619 0.007136 +v 0.000996 -0.031211 -0.000427 +v -0.024961 0.007119 -0.014035 +v -0.025681 -0.017876 0.037530 +v -0.015241 0.017322 -0.012749 +v 0.003922 -0.003884 -0.024380 +v 0.030213 -0.005251 -0.001114 +v -0.009858 0.031109 0.043468 +v 0.004747 -0.032440 0.015493 +v -0.029473 0.011094 0.037149 +v -0.014713 0.019244 -0.003997 +v -0.003093 0.003143 0.008281 +v 0.021759 -0.024621 0.046149 +v 0.030189 0.019612 0.064129 +v 0.018864 0.016879 0.014510 +v 0.033504 -0.006432 0.044337 +v -0.005702 -0.023478 0.009335 +v -0.023888 0.017469 0.047148 +v -0.013735 -0.008692 0.010373 +v 0.002085 0.039804 0.012902 +v 0.030663 0.003709 0.005103 +v 0.000117 0.051113 0.034862 +v -0.020795 0.015776 0.022998 +v -0.010503 -0.025472 -0.006652 +v -0.017049 -0.019398 -0.005346 +v 0.001204 0.034597 0.021175 +v -0.026461 -0.006892 0.006279 +v -0.006748 -0.035495 0.062095 +v -0.012893 0.014051 0.010965 +v -0.017181 -0.022046 0.012993 +v -0.030856 -0.001591 0.024968 +v -0.030669 0.000096 0.011216 +v -0.034658 -0.003641 0.052378 +v 0.016360 -0.021385 0.007794 +v -0.030150 0.011910 0.049015 +v 0.031482 0.009418 0.032209 +v 0.002833 0.055827 0.044123 +v 0.032660 -0.018316 0.061850 +v 0.031386 -0.013703 0.042134 +v -0.027889 0.003875 -0.011710 +v -0.004417 0.029408 0.025468 +v 0.002232 0.028724 0.002974 +v 0.024973 -0.010757 -0.013650 +v -0.026290 -0.025138 0.061999 +v 0.033387 0.013689 0.062380 +v 0.024247 0.024533 0.056024 +v -0.022999 -0.017618 0.029873 +v 0.036839 -0.002274 0.062068 +v 0.007368 -0.030501 0.000148 +v 0.020118 -0.032147 0.066228 +v 0.001844 0.025845 -0.024979 +v -0.018905 0.015445 -0.001690 +v -0.002435 0.041759 0.057201 +v -0.005273 -0.005391 0.008243 +v 0.017013 0.021672 0.020824 +v -0.009131 -0.025824 -0.012591 +v 0.033271 0.009290 0.046012 +v 0.032373 0.004787 0.024926 +v -0.010870 0.025808 0.012441 +v 0.002658 -0.019747 0.008181 +v -0.023811 0.007118 -0.020877 +v 0.016164 0.005698 0.008003 +v -0.000680 -0.030526 0.004775 +v -0.004475 -0.032751 0.030636 +v -0.000096 -0.033239 0.020554 +v -0.012263 -0.020314 -0.025118 +v -0.009812 -0.010395 0.009734 +v 0.017233 -0.016257 -0.025118 +v 0.033535 -0.012804 0.049075 +v -0.032300 -0.012699 0.059139 +v -0.011572 0.028825 0.035148 +v 0.031019 0.009273 0.027833 +v -0.006195 -0.016353 0.009474 +v -0.025524 -0.026649 0.066210 +v -0.004136 0.043476 0.031158 +v 0.026040 -0.020114 0.045487 +v -0.029952 -0.000541 0.003210 +v 0.025115 -0.017600 0.027190 +v -0.031516 -0.016144 0.055800 +v -0.020427 -0.010054 0.010330 +v 0.016085 0.021783 0.016153 +v 0.018713 -0.002035 0.008451 +v 0.008565 0.016903 0.008519 +v -0.006273 -0.034508 0.042737 +v 0.007043 -0.019709 -0.025402 +v -0.012039 -0.002675 0.009707 +v -0.002558 0.036947 0.017244 +v -0.014684 -0.015984 0.010613 +v 0.035672 -0.007725 0.065345 +v 0.031800 0.008614 0.040991 +v 0.016114 -0.022686 0.002094 +v -0.000658 0.056774 0.051901 +v 0.019469 0.020716 0.029904 +v -0.001482 -0.024900 -0.025377 +v 0.005489 -0.035406 0.056809 +v 0.000456 0.046115 0.053232 +v -0.017524 -0.024065 0.027944 +v 0.021955 0.010301 -0.021328 +v 0.018882 0.013962 -0.016705 +v -0.005135 0.027079 -0.008685 +v -0.023112 -0.013919 -0.002987 +v 0.004506 0.027238 -0.009660 +v -0.008556 0.028810 0.017800 +v -0.034319 0.001793 0.048858 +v -0.033596 -0.013417 0.066363 +v 0.019291 0.005792 -0.025474 +v -0.021182 -0.008324 -0.025386 +v 0.013410 0.017557 -0.024930 +v -0.031669 -0.003728 0.033458 +v -0.029885 -0.009295 0.013704 +v -0.005579 0.040262 0.009364 +v -0.021037 0.000913 0.011562 +v -0.027073 0.002580 -0.022325 +v 0.008742 0.025891 -0.002438 +v 0.022701 0.015328 0.014977 +v -0.012230 -0.021721 -0.019772 +v 0.008212 -0.033460 0.032434 +v -0.011539 -0.029893 0.029020 +v -0.011576 0.019874 -0.019556 +v 0.014541 -0.034448 0.061560 +v 0.008949 -0.025734 0.005398 +v 0.016351 0.024590 0.035494 +v -0.034904 -0.009051 0.066257 +v -0.006795 -0.029893 -0.000430 +v -0.003924 0.032786 0.049498 +v 0.027023 -0.019674 0.050469 +v 0.003891 -0.035186 0.052898 +v 0.017051 -0.016624 0.005678 +v 0.035413 0.004503 0.054535 +v -0.028134 -0.007319 -0.009135 +v 0.010267 -0.028417 0.010497 +v 0.028180 0.008899 0.018411 +v -0.020768 -0.022436 0.037148 +v -0.026227 0.011095 0.017595 +v -0.002137 0.053411 0.042591 +v 0.006703 0.025906 -0.014584 +v 0.034593 -0.001110 0.041042 +v 0.002248 -0.017604 -0.024382 +v -0.007450 0.024776 -0.016462 +v -0.012023 0.006680 0.010420 +v 0.028886 -0.007647 -0.007464 +v -0.006780 0.024150 -0.023975 +v 0.029870 -0.013946 0.034890 +v 0.034338 -0.011081 0.061020 +v 0.023938 0.017538 0.036914 +v -0.001039 0.049950 0.047947 +v -0.027590 -0.012079 0.023236 +v -0.004154 0.011008 0.010026 +v 0.019183 -0.016302 -0.016417 +v -0.004597 0.014308 -0.024388 +v -0.030686 0.007541 0.025003 +v -0.034898 0.006251 0.062278 +v 0.006284 0.032038 0.040390 +v -0.033112 0.003605 0.038555 +v -0.028514 0.005206 -0.002137 +v -0.020480 -0.015290 -0.010570 +v -0.010522 0.024420 0.001578 +v 0.033490 -0.010297 0.040834 +v 0.029723 0.018370 0.055138 +v -0.002955 0.034458 0.066343 +v 0.000900 0.036072 0.054426 +v -0.005004 -0.031403 0.006997 +v 0.024048 0.024961 0.064762 +v -0.012946 -0.024458 0.002623 +v 0.015393 0.010378 0.007155 +v -0.021173 0.021946 0.047679 +v 0.025488 0.014867 0.029316 +v -0.004494 -0.031258 0.015096 +v 0.026747 0.022669 0.058595 +v -0.024521 0.007292 0.009978 +v 0.017360 -0.027524 0.039182 +v 0.034771 0.004962 0.048863 +v -0.020940 0.025944 0.058853 +v 0.008382 0.016376 -0.025376 +v -0.030509 -0.012169 0.031394 +v 0.024717 0.008255 -0.017557 +v 0.021467 0.017761 0.023235 +v 0.033139 0.012070 0.054521 +v -0.011069 -0.032714 0.048442 +v 0.031750 -0.005500 0.013858 +v 0.025806 -0.024992 0.054630 +v 0.030269 0.007553 0.012805 +v 0.013971 0.022052 0.005042 +v 0.027357 0.018448 0.051299 +v -0.028388 -0.008523 -0.003055 +v -0.013337 0.026049 0.038424 +v 0.015312 0.014815 0.003978 +v 0.019093 0.015564 0.008307 +v -0.025745 -0.015589 0.033586 +v 0.009467 -0.036186 0.062541 +v 0.033806 0.009725 0.062085 +v 0.016146 0.014651 -0.025142 +v 0.002575 0.011235 -0.024417 +v 0.002684 0.028064 -0.003310 +v 0.008280 0.012151 -0.024404 +v 0.000012 0.054061 0.057006 +v 0.033492 -0.014404 0.063100 +v 0.011009 0.025509 0.008811 +v 0.001892 0.032391 0.051485 +v 0.033087 -0.003443 0.025202 +v -0.028218 -0.003526 -0.014169 +v 0.028922 -0.003679 -0.015594 +v 0.009640 0.023231 -0.013824 +v -0.023181 -0.016246 0.022770 +v -0.021153 -0.020962 0.040789 +v 0.027147 0.008160 -0.003023 +v -0.011956 -0.030362 0.043823 +v -0.024849 0.016169 0.040051 +v 0.022095 -0.020758 0.027615 +v -0.031266 0.001855 0.018448 +v -0.023518 0.010837 -0.001053 +v -0.026251 0.023928 0.065922 +v -0.000225 0.038596 0.020381 +v -0.016660 0.022840 0.030717 +v 0.024736 0.009576 -0.008981 +v -0.033451 -0.006329 0.055049 +v -0.029019 -0.000997 -0.006306 +v 0.031277 -0.022275 0.065848 +v -0.008326 -0.020446 -0.025379 +v -0.031443 0.014588 0.056740 +v 0.003727 0.033094 0.048103 +v -0.019031 0.016406 0.005240 +v -0.008090 -0.034084 0.052067 +v -0.024541 -0.013621 0.003725 +v 0.011827 -0.031198 0.027655 +v 0.009739 0.010139 0.007642 +v -0.019573 0.027902 0.065500 +v 0.015804 0.022340 0.028051 +v -0.001324 0.045214 0.024472 +v 0.022750 0.014052 0.007247 +v -0.022117 -0.003528 0.011091 +v 0.012170 0.031572 0.053191 +v 0.026403 -0.009267 0.005763 +v -0.013564 -0.007457 -0.024381 +v -0.005177 0.018594 0.012535 +v -0.014097 0.019121 0.014302 +v 0.028804 0.013386 0.039863 +v 0.011191 0.026961 0.019467 +v -0.029624 -0.019682 0.056150 +v 0.018461 -0.019312 -0.003144 +v -0.001321 -0.011546 0.007661 +v 0.022854 -0.009658 -0.025416 +v 0.003342 -0.034619 0.046048 +v 0.027440 0.009445 0.006133 +v 0.032708 -0.008029 0.028359 +v 0.002203 0.056084 0.035584 +v -0.000152 0.053426 0.038700 +v 0.035912 -0.006183 0.056269 +v 0.019729 -0.007005 0.008529 +v 0.029672 0.000279 -0.008735 +v -0.013269 -0.032746 0.056746 +v -0.011892 0.021845 -0.005766 +v 0.010455 -0.027930 -0.000982 +v -0.006171 0.030465 0.038760 +v -0.004973 0.028806 0.008455 +v 0.033640 0.012376 0.066129 +v -0.013667 0.021141 0.000877 +v -0.004152 0.031344 0.033472 +v 0.001472 -0.023884 0.008537 +v -0.001656 0.040594 0.016169 +v 0.022745 -0.017081 0.009271 +v -0.004128 0.052263 0.057346 +v -0.001294 0.052658 0.030570 +v 0.011005 0.024358 0.013383 +v -0.025103 0.010055 0.004080 +v -0.017431 -0.023872 0.035913 +v 0.019387 0.025600 0.050452 +v -0.016351 -0.003114 -0.024405 +v 0.020604 -0.030976 0.058008 +v 0.012484 -0.009379 0.007593 +v 0.013122 -0.033440 0.056157 +v 0.018505 -0.009409 -0.025443 +v 0.001179 0.017541 -0.025277 +v 0.026798 -0.011317 0.011995 +v 0.032335 0.001127 0.018594 +v 0.014226 0.026479 0.043428 +v -0.004576 0.035015 0.010612 +v 0.035475 -0.001589 0.050126 +v 0.010056 -0.026143 -0.014135 +v 0.029253 -0.015343 0.039309 +v -0.003137 0.027676 -0.005326 +v 0.035938 0.006319 0.063123 +v -0.001522 0.028586 0.002382 +v -0.011954 0.031240 0.052535 +v 0.021608 0.027138 0.057558 +v 0.010126 0.021657 -0.020334 +v 0.011036 -0.023820 -0.021298 +v -0.007739 0.026758 -0.001364 +v -0.004295 0.033250 0.055727 +v 0.030046 -0.001147 0.011216 +v -0.021725 -0.016784 0.006639 +v -0.025267 0.020251 0.054775 +v -0.019786 0.005656 -0.025362 +v 0.014323 -0.019710 -0.024627 +v 0.017361 0.024522 0.047150 +v 0.023039 0.010157 0.007829 +v 0.025476 -0.013580 0.015438 +v -0.002748 0.031570 0.044880 +v -0.007352 -0.031227 0.021967 +v 0.034834 0.002386 0.045975 +v -0.035584 0.002563 0.062478 +v -0.032486 -0.002591 0.040915 +v 0.022728 -0.015559 0.000654 +v 0.027453 -0.014181 0.021305 +v 0.026127 0.005177 -0.025098 +v -0.028784 0.013417 0.045342 +v 0.000122 0.053618 0.046626 +v -0.013933 0.024048 0.020643 +v 0.028714 0.015539 0.047954 +v 0.019089 -0.020373 0.016342 +v -0.032003 0.007320 0.035086 +v 0.021989 0.022905 0.052724 +v -0.034270 0.007783 0.058930 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_2.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_2.obj new file mode 100644 index 0000000000000000000000000000000000000000..02a0d8a02352e1b01d373bd91d0e09cebca61caf --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_2.obj @@ -0,0 +1,1028 @@ +o mesh +v -0.004921 -0.045613 -0.007127 +v 0.004813 0.041048 0.036255 +v 0.064361 -0.002295 0.000233 +v -0.014138 0.027842 -0.042144 +v -0.040925 0.004234 0.011001 +v 0.033361 0.041201 -0.015511 +v 0.016964 -0.012246 0.029890 +v 0.021998 -0.008763 -0.032949 +v -0.030022 -0.014778 -0.032264 +v -0.042401 0.041144 -0.011954 +v -0.023807 -0.032514 0.029705 +v 0.035747 -0.033293 -0.001141 +v -0.032700 0.040250 0.025617 +v -0.042199 -0.036882 -0.003781 +v 0.030937 0.021330 0.016969 +v -0.004232 -0.007867 -0.004667 +v -0.013266 0.007817 0.035286 +v -0.001579 -0.036367 -0.041778 +v 0.010981 -0.045709 0.023425 +v 0.017584 0.022554 -0.037142 +v 0.035290 0.006192 -0.009373 +v -0.040103 0.011766 -0.019625 +v 0.024698 -0.038266 -0.028438 +v -0.004815 -0.001376 -0.042698 +v 0.055488 0.025700 0.000004 +v -0.025912 -0.043036 -0.027158 +v 0.012206 0.014559 0.033353 +v -0.042485 -0.012333 -0.009193 +v -0.024239 -0.048059 0.009569 +v 0.018730 -0.002977 0.007047 +v -0.038708 -0.019804 0.014086 +v -0.017913 -0.004686 0.014933 +v -0.001078 -0.028150 0.035347 +v -0.031189 0.040961 -0.032503 +v -0.042460 0.027862 0.008496 +v 0.017066 -0.046842 0.000013 +v 0.004545 0.041302 -0.040754 +v 0.051499 -0.019111 0.008612 +v -0.024966 0.006781 -0.036763 +v 0.035075 0.040887 0.006998 +v 0.027572 -0.030813 0.019323 +v -0.031512 0.018142 0.025573 +v 0.033575 -0.014982 -0.014880 +v -0.014428 0.030974 0.033445 +v 0.024099 0.040884 0.026022 +v -0.023113 -0.003984 -0.014709 +v 0.014458 -0.004272 -0.013732 +v 0.005506 -0.048017 -0.025775 +v -0.009680 -0.047209 0.025291 +v -0.015507 -0.013275 0.033980 +v 0.001450 -0.001455 0.023314 +v 0.031746 0.022462 -0.021895 +v 0.023025 0.041219 -0.032440 +v 0.006979 -0.018789 -0.040722 +v -0.013064 -0.020683 -0.041062 +v 0.032823 0.024231 -0.002386 +v 0.025612 0.004214 0.023199 +v -0.038506 -0.028953 -0.020451 +v -0.003190 -0.005039 -0.023121 +v 0.032595 -0.014700 0.011227 +v -0.023647 -0.046647 -0.009040 +v 0.001323 0.016164 -0.042775 +v -0.028656 0.022919 -0.030163 +v -0.037638 -0.037695 0.014599 +v -0.031210 0.000384 0.025390 +v 0.023888 0.007373 -0.026149 +v 0.060637 0.012273 0.009892 +v -0.000030 -0.046385 0.009911 +v -0.043816 0.014481 -0.002496 +v 0.009682 0.003159 -0.034767 +v 0.034551 0.006799 0.007536 +v -0.009905 -0.046884 -0.031996 +v -0.027360 -0.003625 0.001334 +v 0.027043 -0.043152 -0.012629 +v 0.015589 -0.031485 0.030154 +v 0.000590 -0.011642 0.035668 +v -0.002516 0.020444 0.034121 +v -0.037923 -0.004850 -0.022915 +v 0.013367 -0.032858 -0.037960 +v -0.037719 0.027139 -0.017617 +v -0.029239 -0.017681 0.026345 +v -0.018576 -0.035944 -0.038923 +v 0.014434 0.029279 0.029152 +v 0.027374 -0.022448 -0.026566 +v 0.043332 0.020445 0.007595 +v 0.046285 -0.023484 -0.004924 +v 0.028078 -0.042377 0.008964 +v -0.003399 -0.006992 0.010485 +v -0.042836 0.041238 0.002670 +v -0.018079 -0.007039 -0.039844 +v -0.039159 0.001896 -0.009054 +v -0.018703 0.041262 -0.039590 +v 0.001416 0.005150 0.036045 +v -0.012096 0.011223 -0.042072 +v -0.029876 -0.029830 -0.031840 +v -0.035397 -0.042328 -0.016409 +v 0.008966 -0.046161 -0.012023 +v -0.042355 -0.009112 0.004641 +v 0.035405 -0.008667 -0.002304 +v 0.032683 -0.030663 -0.016258 +v -0.042560 -0.022462 0.000654 +v 0.055113 -0.012052 -0.003412 +v -0.044039 0.028245 -0.005367 +v 0.001134 -0.041592 0.032016 +v -0.018618 -0.000386 -0.027142 +v 0.031267 -0.003222 -0.021151 +v -0.015086 -0.046429 -0.019446 +v -0.036596 0.017003 0.013355 +v -0.022063 -0.043545 0.022494 +v 0.061815 0.011440 -0.003218 +v -0.020718 0.018936 0.033068 +v -0.000937 0.029077 -0.043401 +v 0.013419 0.001497 0.032327 +v 0.020821 0.016616 0.023752 +v -0.013157 -0.046128 0.002963 +v 0.025923 -0.017791 0.021986 +v -0.012327 -0.036593 0.034133 +v -0.018604 -0.001467 0.027678 +v -0.033188 -0.046682 -0.000330 +v 0.018046 -0.047113 -0.021156 +v -0.034166 0.028858 0.018251 +v -0.040163 0.040144 0.015232 +v 0.009544 -0.006900 -0.000934 +v 0.025692 -0.000548 -0.003744 +v 0.040422 -0.025571 0.007679 +v 0.018167 -0.021527 -0.035359 +v 0.056001 -0.007374 0.008735 +v 0.027847 0.034903 0.015707 +v 0.014256 0.000331 0.019945 +v -0.025619 0.029088 0.027877 +v -0.021079 0.041166 0.031039 +v -0.036623 -0.008331 0.018288 +v 0.044852 0.020672 -0.004697 +v 0.031465 -0.002793 0.014705 +v 0.016831 -0.046657 0.012592 +v -0.015726 -0.007168 0.001277 +v -0.008449 0.041030 0.036764 +v 0.036976 0.037067 -0.004313 +v 0.009654 -0.021420 0.033212 +v -0.036071 0.038455 -0.021792 +v 0.012634 0.033809 -0.036061 +v 0.025864 0.028464 -0.030412 +v -0.030654 -0.002827 -0.032195 +v 0.021587 -0.040101 0.023786 +v -0.029423 0.000266 0.012364 +v -0.033613 -0.028767 0.021277 +v -0.037909 -0.016680 -0.022224 +v -0.033949 0.008073 -0.029029 +v -0.007520 0.040832 -0.043277 +v -0.007755 -0.002541 0.035891 +v -0.003921 -0.013488 -0.042414 +v 0.035313 0.029425 -0.013004 +v -0.015557 -0.025271 0.033665 +v 0.009542 -0.002093 -0.024012 +v 0.006308 -0.005832 -0.041257 +v -0.012012 -0.006941 -0.014785 +v 0.035119 -0.021143 -0.003825 +v 0.035027 0.028367 0.008069 +v 0.003767 0.030062 0.033192 +v 0.025021 0.029033 0.025034 +v -0.023734 0.008635 0.027772 +v 0.029497 0.012357 -0.017297 +v 0.006015 -0.042371 -0.035924 +v -0.002342 -0.025066 -0.042023 +v 0.005811 -0.046187 0.000217 +v -0.011943 -0.046505 0.014153 +v -0.041938 -0.025247 -0.010237 +v -0.025838 0.031315 -0.037062 +v 0.008562 -0.005176 0.012059 +v 0.018766 0.011523 -0.035914 +v -0.008838 -0.000007 -0.032421 +v -0.020924 0.019498 -0.039406 +v 0.022647 0.018160 -0.028068 +v 0.032375 0.013080 -0.001360 +v 0.013768 0.040746 0.029966 +v -0.004268 -0.046175 -0.020146 +v 0.000616 -0.048069 0.021361 +v 0.027593 -0.043940 -0.001724 +v -0.041311 -0.031950 0.006214 +v -0.043320 0.003041 0.000730 +v -0.023430 -0.023039 -0.036828 +v -0.033603 0.008425 0.018733 +v 0.030085 0.037132 -0.025743 +v 0.056730 0.002804 0.006095 +v 0.023458 0.001020 -0.014609 +v 0.002883 -0.007099 -0.012304 +v 0.028047 0.010567 0.015261 +v 0.025794 -0.006742 0.022528 +v -0.009020 -0.004088 0.020301 +v -0.007289 -0.019354 0.035517 +v 0.015741 -0.041763 -0.032656 +v -0.031360 -0.038926 0.022612 +v 0.035226 0.018302 -0.011252 +v -0.034521 -0.037082 -0.026325 +v 0.056042 0.021531 0.009324 +v 0.028233 -0.012373 -0.025807 +v 0.034653 -0.003682 -0.011469 +v 0.006894 0.025445 -0.038220 +v 0.019007 -0.021957 0.028202 +v 0.003325 0.005578 -0.042163 +v -0.042672 0.019791 -0.012913 +v -0.028549 -0.000683 -0.022467 +v -0.026725 -0.008295 0.028760 +v 0.020040 0.001696 -0.034755 +v -0.008418 0.020043 -0.039360 +v -0.031304 0.032053 -0.027812 +v 0.034426 0.016726 0.009022 +v -0.005524 0.029891 0.037238 +v -0.038667 -0.041233 0.005572 +v -0.014455 0.001881 -0.041216 +v 0.033127 -0.031808 0.007998 +v 0.013760 -0.011103 -0.038288 +v -0.036328 0.018547 -0.026467 +v 0.063140 0.018779 0.003371 +v -0.010925 -0.029962 -0.041335 +v 0.006894 -0.034253 0.033777 +v -0.011836 0.020492 0.036039 +v -0.024402 -0.047859 -0.018400 +v -0.039874 0.019624 0.004636 +v 0.031502 -0.023893 0.012978 +v -0.022457 -0.046347 0.000524 +v -0.041063 -0.034140 -0.013089 +v 0.019354 -0.047929 -0.010255 +v -0.036432 0.003255 -0.018358 +v 0.016622 0.008749 0.026522 +v -0.009574 -0.040523 -0.039541 +v 0.010094 0.014103 -0.040537 +v 0.000374 -0.000025 -0.033557 +v 0.033906 -0.037416 -0.010025 +v -0.014086 -0.046099 -0.008151 +v -0.030663 -0.001425 -0.007852 +v 0.027885 0.000810 0.005468 +v 0.022312 -0.000144 0.015547 +v 0.021470 -0.030663 -0.032455 +v -0.042956 0.010677 -0.010795 +v 0.035579 0.001211 0.000391 +v 0.019028 0.000342 -0.022997 +v 0.007509 -0.047176 0.014883 +v -0.034372 -0.023211 -0.027319 +v -0.005134 0.011433 0.036487 +v 0.054885 -0.020228 0.000269 +v -0.028016 0.015319 -0.034883 +v 0.064792 0.006927 0.003901 +v -0.020984 -0.006163 -0.005868 +v -0.039548 0.010426 0.004756 +v -0.035650 -0.000475 0.003499 +v 0.020518 -0.001859 0.027707 +v 0.009217 -0.006146 0.033880 +v 0.030583 -0.038625 -0.019455 +v -0.043204 -0.004741 -0.003443 +v 0.006482 0.021124 0.031903 +v 0.005980 -0.029024 -0.040798 +v -0.031564 -0.043522 0.012094 +v -0.001145 -0.047239 -0.031695 +v 0.012398 -0.040006 0.030141 +v 0.034449 -0.006478 0.006114 +v 0.046547 0.026315 0.001752 +v -0.026687 -0.037674 -0.033984 +v -0.006326 0.000029 0.027467 +v -0.023970 -0.023856 0.029940 +v 0.026689 -0.001496 -0.028267 +v 0.045813 -0.018237 0.001917 +v -0.002939 -0.045875 0.001270 +v 0.018194 -0.004229 -0.005960 +v -0.018369 -0.046612 -0.029158 +v 0.001631 -0.007581 0.002317 +v -0.040628 0.033103 0.000776 +v -0.019843 -0.015339 -0.038868 +v 0.034778 -0.015625 0.002656 +v -0.019284 -0.040605 0.029972 +v 0.060835 -0.012251 0.002847 +v 0.054979 0.017257 0.000572 +v -0.036527 -0.042794 -0.007072 +v 0.003073 0.012766 0.032814 +v 0.028043 -0.031322 -0.025114 +v -0.038718 -0.028154 0.013532 +v -0.041711 -0.004377 -0.013932 +v -0.007714 -0.010891 0.035724 +v 0.016312 0.041024 -0.037961 +v -0.004666 0.008679 -0.039337 +v 0.034114 -0.022975 -0.011874 +v -0.037511 0.000182 0.017371 +v 0.028342 0.030667 -0.020871 +v -0.040611 -0.004105 0.010978 +v 0.020095 0.023293 0.029138 +v 0.024044 -0.042469 0.016112 +v 0.001304 -0.003502 0.035836 +v -0.011343 -0.004600 -0.023055 +v -0.034701 -0.015984 0.020552 +v -0.024992 -0.000826 0.020282 +v 0.030934 0.005704 -0.022442 +v 0.020704 0.033200 -0.035321 +v 0.029361 0.014532 -0.025295 +v -0.039185 0.035598 0.008366 +v -0.011852 -0.012193 -0.041543 +v -0.025426 -0.009321 -0.036014 +v 0.030594 -0.036528 0.014019 +v 0.022253 -0.029973 0.025309 +v -0.041686 -0.016934 0.006430 +v -0.017977 0.010721 -0.036620 +v -0.036472 0.021371 0.020081 +v -0.042604 0.033614 -0.014706 +v 0.062736 -0.001638 0.008969 +v 0.031416 -0.023354 -0.019729 +v -0.036965 0.026484 -0.025845 +v -0.023100 -0.004412 0.008039 +v 0.046536 -0.026712 0.002366 +v -0.041023 -0.017691 -0.014893 +v -0.007456 0.031798 -0.039737 +v -0.004456 -0.036237 0.035154 +v 0.011532 -0.046372 0.006712 +v 0.000543 -0.020318 0.035477 +v 0.056607 -0.003665 0.000716 +v 0.038927 0.016967 0.000639 +v 0.032792 0.033264 0.001143 +v 0.005804 0.001323 0.030414 +v 0.007560 0.032877 -0.041982 +v -0.021873 0.033482 0.033173 +v 0.000003 -0.046136 -0.013192 +v 0.023784 -0.016263 -0.030934 +v 0.014220 -0.003294 -0.038256 +v 0.058748 0.004358 -0.002032 +v -0.034380 -0.010147 -0.027740 +v 0.020474 0.034206 0.029431 +v 0.023004 -0.047254 0.005626 +v -0.017464 0.033095 -0.037457 +v 0.040052 -0.028083 -0.005467 +v -0.037100 0.019457 -0.018520 +v -0.044500 0.039042 -0.004580 +v -0.031047 0.010329 0.025783 +v -0.006910 -0.042476 0.030727 +v -0.021462 0.000020 -0.038564 +v -0.042856 -0.015211 -0.002063 +v -0.015117 -0.000746 0.034548 +v -0.030348 -0.047169 -0.012780 +v -0.034282 0.036729 0.018964 +v 0.023952 0.022961 0.020459 +v -0.032171 0.025761 0.025261 +v -0.002174 0.036292 0.034723 +v -0.019034 -0.048114 0.016445 +v -0.042485 -0.029165 -0.002966 +v 0.010239 0.033662 0.034969 +v -0.025239 0.001378 0.030067 +v -0.040915 0.021327 -0.004937 +v -0.007474 -0.046218 0.007982 +v -0.016510 -0.042308 -0.035113 +v -0.008583 -0.029115 0.035055 +v 0.029648 -0.010825 0.017477 +v -0.015729 0.038005 0.035841 +v 0.032647 0.040612 0.014631 +v 0.010381 -0.046833 -0.019390 +v 0.030177 0.005070 -0.014783 +v 0.033539 -0.038305 0.004012 +v 0.029167 0.028094 0.012826 +v -0.019996 -0.006959 0.032534 +v -0.040473 0.008024 -0.003981 +v -0.023113 -0.030437 -0.036776 +v -0.022275 -0.014371 0.031189 +v -0.006395 0.004846 0.033081 +v -0.043707 0.025142 0.001564 +v 0.001718 -0.004558 0.016659 +v -0.024406 0.001148 -0.031382 +v -0.027315 0.037368 0.030158 +v 0.011851 -0.025063 -0.038895 +v -0.002770 -0.042323 -0.037525 +v -0.029850 0.032544 0.023014 +v -0.001605 0.036566 -0.043771 +v 0.008541 0.008255 0.034550 +v 0.013672 -0.046725 -0.026975 +v 0.033979 -0.022482 0.006255 +v 0.026264 0.011863 0.022834 +v -0.015005 0.014524 0.032099 +v 0.035185 -0.014348 -0.006835 +v 0.039058 0.025718 0.002631 +v -0.019901 0.026125 0.033711 +v -0.029400 -0.022165 -0.032506 +v -0.025922 0.039745 -0.037344 +v 0.002713 -0.046038 -0.006470 +v -0.026429 -0.045672 0.017114 +v -0.037473 0.024195 0.012253 +v -0.017402 -0.026990 -0.039551 +v 0.005547 -0.036381 -0.040669 +v 0.023912 -0.042959 -0.020592 +v -0.026453 0.015112 0.029654 +v -0.019739 0.004838 0.033077 +v -0.005817 -0.047245 0.018337 +v -0.025700 0.024168 -0.036862 +v 0.051199 -0.012831 0.005218 +v 0.028884 0.040644 0.020722 +v 0.019000 0.027153 -0.031811 +v 0.047660 0.018868 0.001586 +v 0.057450 0.009213 0.002994 +v 0.049067 0.024652 0.008178 +v -0.039312 0.010309 0.014985 +v 0.029338 0.004150 0.012554 +v 0.036540 0.029355 -0.005564 +v -0.025744 -0.039206 0.027427 +v -0.035945 0.001134 -0.026146 +v -0.041056 -0.023802 0.007959 +v -0.030343 -0.047265 0.006096 +v -0.031773 -0.042426 -0.022455 +v 0.014953 0.018614 0.027975 +v -0.040408 -0.011097 -0.017213 +v 0.050049 -0.017002 -0.003651 +v -0.030876 0.014246 -0.027422 +v -0.016647 0.002743 -0.034263 +v 0.012564 -0.005946 0.005678 +v 0.016766 -0.045487 0.019460 +v -0.016180 -0.047304 0.022790 +v -0.027388 0.022313 0.029322 +v 0.060347 0.020729 -0.002699 +v -0.013958 0.037059 -0.042455 +v -0.013600 -0.007363 -0.008036 +v 0.008209 -0.014679 0.033941 +v 0.032171 0.021327 0.003869 +v -0.002373 0.022001 -0.043258 +v 0.014742 0.000612 -0.028419 +v 0.003501 -0.046172 -0.019276 +v -0.039853 0.026910 -0.010695 +v 0.038253 0.022112 -0.006136 +v 0.011577 0.025313 0.034004 +v 0.013232 0.007267 -0.039001 +v -0.038143 -0.037052 -0.020472 +v -0.040129 0.033271 0.014877 +v 0.057324 -0.015323 0.007904 +v -0.009953 -0.046119 -0.014892 +v -0.018959 -0.003250 -0.020910 +v 0.031825 0.012116 -0.009450 +v -0.006671 -0.007616 0.004485 +v 0.060479 -0.007671 -0.003259 +v -0.011929 -0.047744 -0.025369 +v 0.033181 -0.040137 -0.002747 +v 0.024732 0.012233 -0.030872 +v -0.032427 -0.009164 0.023590 +v -0.028668 -0.027302 0.026421 +v 0.002710 -0.012084 -0.041880 +v 0.052031 0.021462 -0.004030 +v 0.004082 -0.005042 -0.021252 +v 0.033776 0.035201 -0.018619 +v 0.015616 -0.005221 0.030935 +v -0.040754 0.033509 -0.008043 +v 0.023723 0.036059 0.021308 +v 0.031987 -0.010139 -0.019311 +v -0.027479 0.009437 -0.030706 +v -0.011710 -0.005459 -0.041712 +v 0.012273 -0.046163 -0.006160 +v 0.031757 0.001758 -0.005750 +v -0.002956 -0.046232 0.026789 +v 0.018823 -0.014494 -0.035116 +v 0.027523 -0.023922 0.019732 +v -0.017470 -0.046228 0.008085 +v -0.039659 -0.010647 0.012799 +v 0.032139 0.036152 -0.011311 +v -0.035026 -0.030428 -0.026206 +v 0.040121 -0.030414 0.003107 +v 0.030391 0.019972 -0.015525 +v 0.029996 0.021951 0.010385 +v 0.033277 0.040421 0.000607 +v 0.020545 -0.003111 0.000164 +v -0.017701 0.025342 -0.037113 +v 0.010832 0.002188 0.026154 +v -0.005135 0.014170 -0.043050 +v -0.041765 0.014373 0.009619 +v -0.014377 0.018337 -0.041714 +v 0.019686 -0.042839 -0.025941 +v -0.012620 -0.007058 0.007313 +v -0.037578 0.033117 -0.025362 +v 0.027645 0.022457 -0.028057 +v 0.014538 -0.002579 0.013039 +v 0.029079 0.027244 0.020163 +v 0.013627 0.027291 -0.039442 +v 0.024879 -0.047234 -0.006753 +v 0.002128 0.024718 0.036637 +v 0.004567 -0.001344 -0.028222 +v -0.028420 -0.048093 -0.004786 +v 0.014153 0.016046 -0.034807 +v 0.008671 0.000580 -0.040696 +v 0.023136 -0.012184 0.025005 +v 0.025837 0.035507 -0.030981 +v 0.018267 -0.035884 -0.034892 +v 0.011351 -0.039158 -0.037869 +v -0.032228 -0.022691 0.023161 +v -0.040248 -0.023891 -0.016769 +v 0.008041 -0.005821 -0.016037 +v -0.008411 0.002318 -0.038759 +v 0.045539 -0.021620 0.008156 +v 0.001787 -0.001315 -0.042313 +v -0.038891 -0.041733 -0.000873 +v -0.041468 0.006706 -0.015848 +v -0.028863 -0.001059 -0.015019 +v -0.042457 -0.002297 0.005060 +v 0.006017 -0.007181 -0.006329 +v -0.017842 -0.031225 0.032695 +v 0.022942 -0.023269 -0.031388 +v 0.030687 0.034517 0.009935 +v -0.036552 0.014075 0.019644 +v 0.033754 -0.000419 0.009207 +v 0.034516 -0.029512 -0.008363 +v 0.010858 0.020938 -0.040465 +v 0.018950 0.006865 -0.031141 +v 0.003698 -0.045555 0.026369 +v -0.008982 -0.006386 0.013454 +v 0.029352 0.040745 -0.020571 +v 0.036833 0.015975 -0.005350 +v 0.005066 0.019006 -0.038509 +v 0.040427 -0.021863 0.002534 +v 0.030750 0.011575 0.009393 +v 0.026374 -0.038055 0.020177 +v -0.008473 0.035022 0.034770 +v 0.009706 0.039575 -0.037553 +v -0.037173 -0.000457 -0.003544 +v -0.014329 -0.002002 0.023066 +v 0.035706 0.007576 0.001381 +v 0.026842 0.016634 0.017929 +v -0.003832 -0.002089 -0.028647 +v -0.029798 0.004141 -0.033195 +v -0.035959 0.038651 -0.028080 +v -0.000460 -0.000010 0.030914 +v -0.006158 -0.020075 -0.042080 +v -0.035093 0.001437 0.009933 +v 0.014049 -0.017571 -0.037962 +v 0.035110 0.041198 -0.009065 +v -0.012476 -0.006887 0.034997 +v -0.040204 0.016169 -0.008446 +v 0.062481 0.005279 0.009457 +v -0.012952 -0.042604 0.029199 +v -0.030364 -0.033022 0.024617 +v 0.028102 -0.000532 0.020021 +v 0.017782 -0.037409 0.028406 +v -0.020040 -0.047918 -0.022906 +v -0.030632 0.001347 0.018897 +v -0.018810 -0.046183 -0.012886 +v -0.005566 -0.048007 -0.027423 +v 0.025556 0.002489 -0.022727 +v 0.016949 0.002729 0.025124 +v -0.041376 0.039488 -0.018779 +v -0.022309 -0.041975 -0.032994 +v 0.016990 -0.027549 -0.036027 +v 0.035555 0.013078 0.004154 +v -0.007322 0.016531 0.033803 +v -0.017294 -0.019377 0.033197 +v -0.037648 0.008132 -0.023945 +v -0.006935 0.026844 -0.043332 +v -0.030099 0.034462 -0.033984 +v 0.030208 0.026642 -0.016646 +v -0.002220 0.002742 -0.038980 +v 0.001355 0.010478 -0.039081 +v -0.036077 -0.023361 0.018305 +v 0.021718 -0.047174 -0.016283 +v -0.025054 -0.016676 -0.036020 +v -0.006894 0.024664 0.034384 +v -0.041787 -0.036798 0.002569 +v 0.015591 -0.042196 0.025267 +v -0.031490 0.027820 -0.032383 +v -0.010104 -0.045663 -0.002273 +v 0.037424 0.021875 0.007547 +v -0.042570 -0.020481 -0.006519 +v 0.033410 0.000124 -0.016568 +v -0.037714 -0.022798 -0.022274 +v 0.014489 -0.024904 0.030970 +v 0.030537 -0.016385 -0.021894 +v -0.001887 -0.007784 -0.042508 +v -0.010633 -0.007728 -0.001951 +v 0.025656 0.041070 -0.026994 +v 0.056456 0.015017 0.006489 +v 0.021346 0.001928 -0.028625 +v -0.039860 -0.040253 -0.011395 +v -0.019638 0.010853 0.033309 +v 0.001094 -0.018528 -0.041960 +v 0.030191 -0.017238 0.016123 +v 0.020001 0.013154 0.028774 +v 0.009863 -0.029117 0.032943 +v 0.064743 0.012870 0.004492 +v -0.011558 0.002587 0.031115 +v 0.008605 -0.001490 0.019441 +v 0.021286 0.018810 -0.034373 +v -0.036189 -0.032749 0.017689 +v -0.005115 -0.031600 -0.041876 +v -0.034142 0.001140 -0.013308 +v -0.042204 0.040635 0.009150 +v 0.063098 -0.006239 0.005261 +v -0.041620 0.020251 0.010273 +v 0.003057 0.024757 -0.042809 +v 0.008295 -0.045414 -0.031396 +v 0.031779 0.015272 0.014982 +v -0.017858 -0.046112 -0.003178 +v 0.032417 0.025196 -0.008175 +v 0.008655 0.038672 0.032001 +v 0.022214 -0.001160 -0.008956 +v 0.001511 -0.036419 0.034768 +v 0.042196 0.025479 -0.002636 +v 0.034936 -0.009492 -0.010112 +v 0.001496 -0.046800 0.015707 +v 0.032085 0.007300 -0.003878 +v 0.002397 0.034019 -0.039465 +v 0.051424 0.019016 0.006060 +v -0.006157 -0.006672 -0.018357 +v 0.004330 -0.026088 0.034656 +v -0.022329 0.014117 -0.034535 +v 0.003593 0.034601 0.036823 +v -0.026669 0.004056 0.025109 +v 0.015033 -0.046938 -0.014016 +v -0.026105 -0.002493 -0.035789 +v 0.008463 -0.012115 -0.040433 +v 0.013689 0.034966 0.030403 +v -0.023590 -0.002069 0.014819 +v 0.007092 0.016430 0.035262 +v 0.006814 -0.040589 0.031846 +v -0.032745 -0.041550 0.017384 +v 0.024033 -0.000640 0.009502 +v -0.034483 -0.015896 -0.027452 +v 0.013800 0.007439 0.032360 +v -0.035096 0.013481 -0.021881 +v 0.019408 -0.004046 -0.034969 +v 0.030804 -0.041914 -0.008244 +v 0.019390 0.028785 0.026122 +v -0.043457 0.003247 -0.005084 +v 0.000093 -0.046687 -0.023864 +v 0.005164 -0.046375 0.007484 +v 0.022291 0.007924 0.026678 +v 0.034160 0.009858 -0.015094 +v 0.015029 -0.018779 0.030815 +v 0.029155 0.006341 0.018954 +v 0.058518 0.023799 0.004695 +v -0.007758 -0.007504 -0.011009 +v -0.037386 0.032727 -0.018648 +v -0.030423 -0.008512 -0.032182 +v 0.022789 -0.045962 0.011133 +v 0.018680 0.039563 0.026919 +v 0.029652 0.027142 -0.025646 +v -0.034196 -0.002797 0.021825 +v 0.027928 0.001272 -0.009830 +v 0.064643 0.004266 -0.001042 +v 0.060818 0.018606 0.009132 +v 0.051072 -0.023079 0.004685 +v 0.050530 -0.023964 -0.001312 +v -0.012232 -0.035798 -0.040906 +v 0.035053 0.023588 -0.013040 +v 0.003115 -0.024023 -0.041480 +v -0.010812 0.027973 0.036585 +v 0.027738 0.018122 -0.021345 +v -0.025047 0.019740 -0.032982 +v 0.034066 0.015438 -0.015890 +v 0.035978 0.035585 0.005075 +v -0.030753 -0.038264 -0.030243 +v 0.009218 0.029599 0.031320 +v 0.020987 0.001404 0.021549 +v -0.039977 -0.001523 -0.018985 +v 0.030039 0.001235 0.000253 +v -0.030598 -0.001140 0.005677 +v -0.001101 0.041003 -0.040498 +v -0.042066 -0.031600 -0.008278 +v -0.003153 -0.006765 0.036046 +v -0.043734 0.035918 0.004372 +v 0.026435 -0.007851 -0.028418 +v -0.002977 0.000207 0.036203 +v 0.029761 -0.042312 0.003645 +v -0.042067 0.014395 -0.014775 +v -0.019510 0.006343 -0.039605 +v -0.021276 0.036716 -0.035798 +v 0.060343 -0.000852 -0.003253 +v 0.022542 -0.046261 -0.000198 +v -0.030579 -0.045498 -0.018018 +v -0.032824 0.005407 0.023831 +v -0.024261 -0.000394 -0.026106 +v 0.006766 0.009796 -0.041527 +v -0.023608 -0.001809 0.025481 +v -0.041408 0.023107 -0.017450 +v 0.015119 -0.001697 -0.019765 +v 0.006347 -0.047729 0.020185 +v -0.035348 0.004432 0.014729 +v 0.001742 0.016640 0.036411 +v 0.013691 0.023890 0.028860 +v -0.042122 -0.027438 0.002815 +v -0.030456 0.013700 0.021558 +v 0.028742 0.032579 0.021111 +v 0.032323 0.028113 0.003369 +v -0.007168 -0.009139 -0.042328 +v -0.038138 0.030180 0.010886 +v 0.025949 0.018342 0.023424 +v -0.039721 -0.034344 0.010891 +v -0.044312 0.033717 -0.003661 +v 0.018083 0.039070 -0.032875 +v -0.038013 -0.011277 -0.022378 +v 0.017622 -0.047720 0.005725 +v 0.020450 -0.007259 0.027542 +v -0.043427 0.009097 0.001241 +v 0.003508 0.002251 -0.037916 +v 0.000225 -0.030837 -0.041718 +v -0.029755 0.000299 -0.027896 +v -0.000520 0.040948 0.036998 +v 0.040410 -0.022493 -0.002814 +v 0.021125 -0.016903 0.026632 +v -0.013349 -0.001474 -0.027070 +v -0.012959 0.007601 -0.038191 +v -0.035277 0.023100 -0.022047 +v -0.015393 0.023068 0.032976 +v -0.011382 -0.048040 0.019246 +v 0.031314 -0.040377 -0.014251 +v -0.042488 0.004266 0.005866 +v 0.064580 0.015071 -0.000442 +v -0.017306 -0.006298 -0.014621 +v 0.047564 0.025376 -0.003400 +v -0.031238 0.021437 0.021109 +v 0.035564 -0.003425 -0.003279 +v -0.011500 0.013069 0.035845 +v -0.037514 -0.013844 0.016563 +v -0.039350 0.027614 0.015883 +v -0.043091 -0.001530 -0.007981 +v -0.033947 0.022694 -0.029642 +v 0.011803 -0.010635 0.032701 +v 0.064555 0.001410 0.004027 +v 0.001514 -0.040289 -0.039901 +v 0.011557 -0.006146 -0.009708 +v -0.043450 0.015031 0.002761 +v 0.030578 -0.029081 -0.021049 +v -0.027869 -0.048085 0.001494 +v -0.027232 -0.042206 0.022304 +v -0.032581 -0.001283 -0.001073 +v -0.032990 -0.046685 -0.008235 +v -0.008858 0.007080 -0.042510 +v -0.005224 -0.046090 -0.012372 +v 0.043489 0.025478 0.006045 +v 0.002434 -0.007094 0.007499 +v 0.023841 0.024012 -0.032366 +v -0.025143 -0.046804 -0.023552 +v -0.010616 -0.015313 0.035067 +v 0.052200 0.026563 0.004009 +v -0.002035 -0.007178 -0.014144 +v -0.022407 0.023968 0.029228 +v 0.013050 -0.047548 0.016381 +v 0.014864 0.001902 -0.038002 +v -0.005449 -0.046288 0.013197 +v 0.035985 0.010744 -0.004457 +v -0.007524 -0.043310 -0.034988 +v -0.001102 0.028496 0.034281 +v -0.028335 -0.003303 0.027725 +v -0.005719 -0.024766 0.035447 +v 0.027111 0.009231 -0.021989 +v -0.034971 -0.004366 -0.027194 +v -0.019189 -0.020911 -0.039004 +v 0.031779 0.031518 0.016238 +v 0.032534 -0.009507 0.011556 +v -0.019109 0.014517 -0.039992 +v 0.020471 -0.039914 -0.031546 +v -0.001971 0.008473 0.033614 +v -0.009634 -0.024940 -0.041624 +v 0.031633 0.004654 0.003815 +v -0.034007 -0.043596 0.006091 +v -0.043971 0.019424 -0.000943 +v 0.032549 0.018888 -0.005293 +v 0.035199 -0.022664 0.001126 +v 0.058807 -0.015300 -0.000807 +v -0.020826 -0.006457 -0.000709 +v -0.002018 -0.003628 0.020158 +v -0.002367 0.018315 -0.039643 +v -0.025194 -0.018520 0.029439 +v -0.022394 0.027604 -0.034889 +v 0.033017 0.033387 -0.004005 +v -0.029246 -0.012538 0.026539 +v -0.043567 0.023491 -0.008774 +v 0.023918 0.005220 -0.031605 +v 0.060777 -0.010297 0.007588 +v -0.027227 0.040673 0.026239 +v 0.024525 0.031498 -0.026512 +v 0.058570 0.015804 -0.002768 +v -0.020255 0.029689 -0.040046 +v -0.024055 -0.004937 -0.009760 +v -0.042906 -0.007230 -0.007890 +v 0.031086 -0.028955 0.013482 +v 0.014472 0.012424 -0.038516 +v 0.057647 -0.001926 0.009054 +v 0.022770 -0.023137 0.024975 +v 0.012832 0.011198 0.028870 +v -0.030729 0.019085 -0.032780 +v 0.029427 -0.006767 -0.024296 +v -0.037301 0.040758 0.019667 +v -0.038147 0.008762 0.009346 +v -0.010051 -0.046187 -0.020067 +v -0.006489 0.035198 -0.043663 +v 0.012056 -0.046202 0.000478 +v 0.003819 0.007754 0.032426 +v 0.035090 0.001033 -0.009688 +v 0.027537 -0.040051 -0.023229 +v -0.021465 0.014333 0.029900 +v 0.024286 -0.001572 0.024351 +v 0.020257 -0.047890 -0.004817 +v 0.020341 0.018264 0.028727 +v -0.040296 0.029231 0.004144 +v 0.050922 -0.013772 0.000121 +v 0.054745 -0.008302 0.001380 +v -0.013196 -0.005067 0.016662 +v 0.020340 0.033671 0.024425 +v 0.036444 0.028915 -0.000246 +v 0.031733 0.009888 0.003509 +v -0.043006 -0.010196 -0.001909 +v -0.027041 -0.026519 -0.034297 +v -0.041855 0.000621 -0.014082 +v 0.032409 0.030128 -0.008979 +v -0.037441 0.032893 0.019490 +v -0.012433 0.041077 -0.039908 +v 0.021009 0.031453 -0.030253 +v -0.039221 0.023949 0.007585 +v 0.002549 -0.031538 0.034814 +v 0.043666 -0.028560 -0.002063 +v 0.019013 -0.027308 0.028002 +v -0.023723 -0.001865 -0.020494 +v -0.021474 0.003940 -0.034484 +v -0.042982 0.004960 -0.009928 +v 0.027994 0.010024 -0.027083 +v -0.010691 -0.024613 0.034867 +v -0.038282 0.010921 -0.015074 +v 0.015190 0.004373 -0.033702 +v 0.025140 -0.029639 -0.028778 +v 0.007696 0.007182 -0.037406 +v -0.032153 0.004268 -0.025492 +v 0.024091 -0.047031 -0.011702 +v 0.016772 0.031778 -0.037985 +v -0.012394 0.040633 0.033287 +v 0.055513 -0.018964 0.005089 +v -0.018126 -0.043315 0.025476 +v -0.042052 0.028851 -0.015872 +v 0.028072 0.004829 -0.026715 +v -0.020325 -0.002229 0.021012 +v 0.032450 0.017258 -0.020207 +v 0.018618 0.015673 -0.031677 +v 0.027016 -0.016968 -0.027292 +v -0.001581 0.014405 0.033553 +v -0.010927 0.025654 -0.039128 +v -0.040287 -0.015157 0.010939 +v 0.024392 0.024177 0.025468 +v 0.005669 -0.000119 0.035108 +v 0.033695 0.040789 -0.004271 +v 0.010100 0.004860 0.030429 +v 0.030740 0.039477 0.010260 +v 0.057890 0.008503 0.008389 +v -0.009805 -0.000890 -0.042191 +v -0.043794 0.036853 -0.010041 +v 0.009547 -0.042792 0.027090 +v 0.032366 0.009085 0.013491 +v 0.012135 -0.034533 0.031806 +v -0.039658 -0.038622 -0.015994 +v -0.041204 0.037694 -0.000781 +v -0.030898 0.035853 0.027212 +v 0.018914 0.004516 0.029217 +v -0.033338 0.000147 -0.022041 +v 0.017747 -0.009585 -0.035921 +v 0.055203 -0.016984 -0.003631 +v -0.018772 -0.005712 0.009870 +v -0.018355 0.036665 0.031969 +v -0.015254 -0.016366 -0.040561 +v 0.003494 -0.046833 -0.030040 +v 0.021847 0.009278 0.022031 +v 0.047517 -0.017055 0.006308 +v 0.000358 -0.007756 -0.003108 +v -0.011003 0.014638 -0.038809 +v -0.006380 -0.037020 -0.041614 +v 0.029284 -0.005143 0.018339 +v 0.021449 -0.034720 0.025852 +v 0.035818 -0.025721 -0.005237 +v -0.011267 0.022235 -0.042603 +v 0.005144 -0.008530 0.034955 +v -0.040057 -0.006337 -0.018505 +v -0.009923 0.036960 -0.039565 +v 0.031638 0.011043 -0.021427 +v 0.027024 -0.001098 0.013834 +v -0.001041 -0.006427 -0.019023 +v 0.005187 0.001135 -0.033528 +v -0.003372 -0.016543 0.035782 +v -0.041909 -0.009037 -0.012673 +v 0.024535 0.025691 -0.026281 +v -0.022868 -0.036344 -0.036763 +v -0.039640 -0.032695 -0.017630 +v 0.033801 -0.033055 -0.012226 +v -0.038962 -0.039364 0.010002 +v -0.035571 0.013200 -0.027182 +v 0.032102 0.016637 0.002784 +v -0.028396 -0.047253 0.011847 +v 0.027150 0.024288 0.016801 +v -0.032208 0.026181 -0.026466 +v 0.035122 -0.027594 0.006845 +v 0.013895 0.025149 -0.035154 +v -0.031626 0.012386 -0.031779 +v 0.030874 -0.033794 -0.020215 +v 0.024125 0.031177 0.020845 +v 0.019447 -0.001399 0.011919 +v -0.036376 0.008261 -0.019339 +v 0.006689 0.027263 0.035737 +v 0.025079 0.033798 0.025351 +v -0.002172 0.026211 -0.039789 +v -0.029434 0.037395 -0.029866 +v -0.040997 0.028205 -0.001694 +v 0.022760 -0.001480 -0.032465 +v -0.023291 -0.003904 0.030944 +v 0.024041 -0.001051 0.003359 +v 0.029788 0.000251 -0.024055 +v 0.008289 0.011639 0.031212 +v -0.016437 -0.011769 -0.040335 +v 0.018601 -0.001974 -0.013374 +v -0.012782 -0.019963 0.034549 +v -0.021067 -0.027289 0.031440 +v 0.004889 -0.007412 -0.001630 +v -0.009865 -0.017148 -0.041761 +v 0.033763 -0.009014 -0.014673 +v -0.005601 0.003657 -0.042796 +v 0.013789 -0.006093 0.001109 +v 0.001487 -0.007528 -0.007806 +v -0.017050 0.022806 -0.041048 +v 0.006479 0.000431 0.025640 +v -0.018198 -0.006624 0.005273 +v -0.026609 -0.004201 -0.003288 +v 0.025398 0.003547 0.018404 +v 0.027840 0.035217 -0.021997 +v 0.028365 -0.040681 0.014053 +v -0.003025 -0.007653 -0.009218 +v 0.010825 0.020269 0.030284 +v -0.023927 -0.046508 -0.004338 +v -0.034396 0.031324 0.023232 +v -0.005421 -0.007862 -0.000050 +v -0.042295 -0.032804 0.000127 +v 0.036022 0.033529 -0.010808 +v -0.019211 -0.036340 0.031960 +v 0.008550 0.031097 -0.037743 +v 0.002396 -0.046192 0.003696 +v 0.003868 -0.005920 0.012724 +v -0.000535 0.031990 0.037351 +v 0.029075 0.032551 -0.026887 +v -0.034156 0.036158 0.023862 +v -0.010547 0.002268 0.035676 +v 0.034631 -0.017259 -0.010460 +v -0.035308 0.024172 0.016400 +v 0.032557 -0.018808 -0.017372 +v 0.034589 -0.036330 -0.005527 +v -0.028009 0.030610 -0.030986 +v -0.038402 -0.004081 0.015677 +v -0.011319 -0.007502 0.002848 +v -0.019603 0.000172 0.032962 +v -0.039216 0.029918 -0.022386 +v -0.003413 -0.040475 0.033506 +v 0.037871 0.017704 0.005511 +v -0.008623 0.007600 0.036108 +v 0.020819 -0.042632 0.019470 +v 0.008179 -0.006856 0.004395 +v -0.023987 0.019257 0.028442 +v -0.039289 0.036855 -0.014282 +v 0.063161 -0.007383 0.000534 +v 0.003282 0.031076 -0.042958 +v 0.045125 -0.026037 0.006755 +v -0.012970 0.032321 -0.042601 +v 0.011588 0.034734 -0.040584 +v 0.000415 -0.002869 -0.026797 +v 0.007634 -0.046194 -0.005891 +v -0.040490 0.012548 0.000108 +v -0.024716 -0.047650 -0.013446 +v 0.029407 0.017500 0.011567 +v 0.001466 -0.043043 -0.035287 +v -0.015440 0.016114 -0.037654 +v -0.014003 -0.006294 0.011669 +v -0.040884 -0.029641 -0.014181 +v -0.033024 0.003159 -0.030021 +v -0.034161 0.017569 0.017773 +v -0.004403 0.040333 0.034379 +v -0.030088 0.030231 0.027534 +v 0.012581 0.039480 0.034309 +v -0.023915 -0.047028 0.004859 +v 0.035230 -0.013868 -0.001594 +v 0.001390 -0.045788 -0.001053 +v -0.033920 -0.044084 -0.011931 +v -0.038691 0.016288 -0.022569 +v 0.025007 0.009735 0.018704 +v 0.033191 -0.005109 0.010341 +v -0.042522 -0.024918 -0.005272 +v 0.005913 0.015459 -0.041913 +v 0.027018 0.003754 -0.017864 +v -0.041096 0.040288 -0.007414 +v -0.009772 0.017216 -0.042728 +v 0.035772 0.003469 -0.004294 +v -0.003857 -0.000089 -0.035357 +v -0.015427 -0.039745 0.032319 +v 0.032809 0.028254 -0.020075 +v -0.016355 -0.002254 -0.040576 +v -0.006679 0.019991 0.036754 +v -0.033810 0.035714 -0.025005 +v 0.034751 0.036644 0.010089 +v -0.037728 0.037679 0.012224 +v -0.016275 0.009732 -0.040906 +v -0.002240 -0.007536 0.005670 +v 0.002830 -0.016347 0.035266 +v -0.042105 -0.017955 -0.010444 +v -0.017174 -0.031626 -0.039573 +v 0.035203 -0.033155 0.003410 +v -0.022658 0.036682 0.029984 +v 0.005706 0.037297 -0.042658 +v -0.016476 0.018437 0.034727 +v -0.039230 0.007042 -0.011533 +v -0.031800 0.019842 -0.026773 +v 0.024359 0.014458 -0.025989 +v -0.002355 0.031630 -0.039876 +v 0.025172 -0.012088 -0.029676 +v 0.018069 0.027101 -0.036979 +o kp.000 +v -0.004500 0.039500 -0.001500 +v -0.004500 0.040500 -0.001500 +v -0.004500 0.040500 -0.002500 +v -0.004500 0.039500 -0.002500 +v -0.003500 0.040500 -0.002500 +v -0.003500 0.039500 -0.002500 +v -0.003500 0.040500 -0.001500 +v -0.003500 0.039500 -0.001500 +o kp.001 +v -0.002500 -0.045500 -0.001500 +v -0.002500 -0.044500 -0.001500 +v -0.002500 -0.044500 -0.002500 +v -0.002500 -0.045500 -0.002500 +v -0.001500 -0.044500 -0.002500 +v -0.001500 -0.045500 -0.002500 +v -0.001500 -0.044500 -0.001500 +v -0.001500 -0.045500 -0.001500 +o kp.002 +v 0.056500 0.024500 0.002500 +v 0.056500 0.025500 0.002500 +v 0.056500 0.025500 0.001500 +v 0.056500 0.024500 0.001500 +v 0.057500 0.025500 0.001500 +v 0.057500 0.024500 0.001500 +v 0.057500 0.025500 0.002500 +v 0.057500 0.024500 0.002500 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_3.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_3.obj new file mode 100644 index 0000000000000000000000000000000000000000..76daa047eff02b8f35cd8b9c2c88dfbc58f3910e --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_3.obj @@ -0,0 +1,1028 @@ +o kp.000 +v -0.005500 -0.001500 0.055500 +v -0.005500 -0.000500 0.055500 +v -0.005500 -0.000500 0.054500 +v -0.005500 -0.001500 0.054500 +v -0.004500 -0.000500 0.054500 +v -0.004500 -0.001500 0.054500 +v -0.004500 -0.000500 0.055500 +v -0.004500 -0.001500 0.055500 +o kp.001 +v -0.005500 -0.001500 -0.047500 +v -0.005500 -0.000500 -0.047500 +v -0.005500 -0.000500 -0.048500 +v -0.005500 -0.001500 -0.048500 +v -0.004500 -0.000500 -0.048500 +v -0.004500 -0.001500 -0.048500 +v -0.004500 -0.000500 -0.047500 +v -0.004500 -0.001500 -0.047500 +o kp.002 +v 0.055436 0.028591 0.044364 +v 0.055436 0.029591 0.044364 +v 0.055436 0.029591 0.043364 +v 0.055436 0.028591 0.043364 +v 0.056436 0.029591 0.043364 +v 0.056436 0.028591 0.043364 +v 0.056436 0.029591 0.044364 +v 0.056436 0.028591 0.044364 +o mesh +v -0.042832 0.012539 0.007528 +v 0.062754 0.025724 0.033570 +v 0.010014 -0.047548 0.053187 +v 0.026030 -0.011871 -0.047131 +v -0.001480 0.044017 0.054043 +v -0.013968 -0.043776 -0.006108 +v 0.014138 0.035105 -0.005636 +v -0.046138 -0.026442 0.053067 +v -0.035531 -0.006972 -0.047782 +v 0.036279 -0.019578 0.010700 +v 0.059123 0.023771 -0.027392 +v -0.044585 0.022108 0.054086 +v -0.006735 0.029925 -0.047127 +v 0.039565 -0.007377 0.054015 +v -0.007011 -0.035521 -0.044874 +v -0.043692 -0.025839 0.013961 +v -0.017041 0.041462 0.018744 +v 0.024625 0.028727 0.031096 +v -0.019059 -0.047044 0.030154 +v 0.030826 0.004492 -0.015476 +v 0.019139 -0.034459 -0.017152 +v -0.034192 0.022020 -0.025834 +v 0.012245 -0.044346 0.016535 +v 0.054817 0.037288 0.003006 +v -0.044511 -0.011497 -0.016065 +v -0.004452 -0.003637 -0.041498 +v -0.052060 -0.001977 0.034268 +v 0.031257 -0.032394 0.037626 +v 0.021628 0.017754 -0.043939 +v -0.014630 0.037728 -0.010547 +v 0.040663 0.004782 0.026551 +v -0.029265 -0.031387 -0.028131 +v 0.035794 0.019880 0.054015 +v -0.038912 0.029476 0.029011 +v 0.032534 0.020298 0.005701 +v -0.026803 -0.043609 0.054004 +v -0.026353 0.039852 0.053268 +v 0.007760 0.041072 0.017707 +v -0.026507 0.016553 -0.047733 +v 0.003405 0.034663 -0.026352 +v 0.020527 0.036970 0.053699 +v 0.037363 0.028041 -0.031532 +v -0.034773 -0.032498 -0.006324 +v 0.014501 -0.031235 -0.038941 +v 0.030295 -0.016901 -0.025555 +v -0.038132 -0.035734 0.034501 +v -0.001266 -0.040957 -0.023807 +v -0.032641 0.031648 0.004040 +v -0.025031 -0.038370 0.011736 +v -0.025502 -0.026336 -0.047758 +v -0.048564 -0.008477 0.003884 +v 0.019771 0.022278 -0.022602 +v 0.001180 -0.048957 0.034739 +v -0.041823 0.002895 -0.030383 +v 0.038621 -0.000326 0.004154 +v -0.051069 -0.006741 0.054126 +v 0.040314 -0.014405 0.035195 +v 0.007792 -0.043215 -0.002985 +v 0.045623 0.032402 0.042039 +v 0.024575 -0.034677 0.004296 +v -0.044076 0.010647 -0.012293 +v -0.004744 0.040675 0.034106 +v -0.018394 0.031995 -0.030978 +v -0.006389 -0.047230 0.011358 +v 0.030423 0.002535 -0.035133 +v 0.062802 0.024434 -0.008801 +v 0.061001 0.023621 0.014564 +v 0.028845 -0.020044 -0.007100 +v 0.003438 0.013364 -0.042032 +v -0.009141 -0.049720 0.053392 +v -0.048365 0.014003 0.025459 +v -0.048327 -0.020617 0.033031 +v 0.033767 -0.025206 0.054028 +v -0.023452 0.036811 0.035720 +v -0.003043 0.041038 0.002668 +v 0.008815 -0.015963 -0.046291 +v -0.038546 -0.016784 -0.033528 +v 0.052230 0.035902 -0.017139 +v 0.017552 -0.043758 0.036892 +v 0.025452 -0.031452 0.021271 +v 0.012198 0.041181 0.037411 +v 0.055843 0.037834 0.022803 +v 0.037257 0.018098 0.036987 +v 0.015686 0.001866 -0.046638 +v 0.020488 0.029696 0.013532 +v -0.020703 0.000831 -0.041771 +v 0.024436 -0.039488 0.053504 +v -0.011532 -0.018374 -0.041997 +v -0.050243 -0.010503 0.020336 +v 0.008635 0.028777 -0.041618 +v -0.051468 0.007974 0.047113 +v -0.027165 0.027589 -0.012432 +v 0.032052 0.017341 0.021532 +v -0.017110 -0.039928 -0.020907 +v 0.038335 0.003422 0.042826 +v 0.025034 0.020746 -0.008059 +v 0.047055 0.016304 -0.034250 +v 0.050013 0.018069 0.045613 +v -0.012583 0.014192 -0.042081 +v -0.034147 0.030023 0.044878 +v 0.000523 0.038243 -0.012322 +v -0.030608 0.035279 0.018539 +v -0.043381 0.017808 0.040079 +v -0.013492 0.044011 0.045899 +v 0.040288 -0.007530 0.018893 +v 0.031163 0.014199 -0.026581 +v -0.018930 0.039140 0.004634 +v -0.043339 -0.022642 -0.000199 +v -0.037102 0.019629 -0.003566 +v -0.037514 0.006594 -0.043532 +v -0.017118 -0.036214 -0.034831 +v -0.050095 0.003250 0.016385 +v -0.037545 0.023200 0.015158 +v 0.026933 0.027889 0.045072 +v -0.036151 -0.036030 0.020055 +v 0.036539 -0.006313 -0.008346 +v -0.038195 -0.025112 -0.017606 +v 0.035357 0.010530 -0.003979 +v 0.049980 0.033378 -0.031331 +v -0.016928 -0.044396 0.043659 +v 0.035753 -0.024161 0.025999 +v 0.022438 -0.027906 -0.028600 +v -0.035440 -0.033978 0.050028 +v 0.004764 -0.029911 -0.047787 +v -0.019180 0.028085 -0.043714 +v -0.005893 0.029815 -0.034021 +v -0.047077 -0.001953 -0.007700 +v -0.023951 -0.012558 -0.046735 +v -0.046655 -0.015697 0.044784 +v 0.001042 -0.047995 0.021793 +v 0.017358 0.037873 0.025809 +v 0.023726 0.029838 0.000947 +v 0.038472 0.009192 0.014115 +v 0.002206 -0.037420 -0.035533 +v 0.006710 -0.037374 -0.014595 +v -0.008498 0.036392 -0.022289 +v 0.008995 0.035285 0.005955 +v -0.028943 -0.043220 0.039899 +v 0.012007 -0.036143 -0.027567 +v -0.004734 0.043342 0.021803 +v 0.013141 0.032830 -0.018717 +v -0.036659 -0.033262 0.006003 +v 0.055373 0.037054 0.035769 +v -0.025603 -0.040425 -0.000542 +v 0.019770 -0.022565 -0.047504 +v 0.064426 0.026859 0.003136 +v 0.040706 0.008389 0.053812 +v -0.026078 -0.032736 -0.014985 +v -0.034177 0.017124 -0.038168 +v 0.025832 -0.010184 -0.035023 +v -0.003916 -0.042039 0.000470 +v 0.009609 0.042480 0.049182 +v 0.034080 -0.005599 -0.021097 +v -0.015954 -0.046778 0.018641 +v 0.039760 -0.017776 0.046881 +v 0.015456 0.022491 -0.033691 +v 0.026423 0.007136 -0.046296 +v 0.019730 -0.041468 0.025243 +v -0.027343 -0.038881 0.028052 +v -0.041259 0.000429 -0.017644 +v -0.003640 -0.043698 -0.011573 +v 0.017912 -0.037992 -0.005511 +v -0.039937 -0.027188 0.026623 +v -0.034540 -0.018085 -0.044636 +v -0.039094 -0.007625 -0.026359 +v -0.000483 -0.045868 0.045769 +v 0.036320 -0.014732 -0.000077 +v -0.035656 0.018026 -0.015087 +v -0.007762 -0.045146 0.028724 +v 0.004489 -0.045804 0.008271 +v -0.041548 -0.026327 0.042714 +v 0.060632 0.035277 0.012499 +v -0.024553 0.023192 -0.034509 +v 0.027447 -0.025401 -0.018673 +v -0.025300 0.034957 -0.004098 +v 0.015129 -0.041654 0.006006 +v 0.008854 -0.042894 0.027976 +v -0.050467 0.010063 0.036185 +v -0.020630 0.034077 -0.019229 +v 0.037848 -0.003596 0.033340 +v -0.017056 -0.044807 0.005100 +v 0.058387 0.036577 -0.007507 +v 0.010587 0.019651 -0.047765 +v 0.005942 0.001122 -0.041386 +v -0.041343 0.011405 -0.023382 +v -0.023625 -0.027571 -0.036970 +v 0.004434 0.039256 0.028178 +v 0.056714 0.027258 0.042591 +v -0.048021 0.004734 0.001856 +v 0.026807 0.022602 -0.031982 +v 0.024875 -0.021331 -0.036934 +v 0.030911 -0.029030 0.011342 +v -0.014591 -0.007075 -0.046110 +v 0.041983 -0.006801 0.043004 +v 0.022285 0.035738 0.039198 +v -0.036241 -0.005728 -0.036596 +v -0.014396 0.039318 0.029495 +v -0.001230 -0.013925 -0.041457 +v 0.029319 0.027582 0.019693 +v -0.044192 -0.015023 0.011106 +v -0.009389 0.038323 0.011996 +v 0.000889 0.041393 0.043200 +v -0.017669 -0.033009 -0.045114 +v 0.030673 0.016095 -0.015758 +v 0.021597 -0.038946 0.014822 +v 0.060708 0.029632 -0.017799 +v -0.048868 -0.002879 0.044552 +v -0.003856 -0.025552 -0.043521 +v 0.037385 0.027217 0.046282 +v 0.033266 -0.022100 0.036066 +v 0.022613 -0.028807 -0.007275 +v 0.020883 0.029350 -0.012286 +v 0.017141 -0.008117 -0.043155 +v -0.039677 -0.018328 -0.008929 +v 0.009735 -0.047399 0.042660 +v -0.008872 0.005389 -0.046098 +v 0.023158 -0.035536 0.044029 +v 0.036849 0.017363 -0.035499 +v -0.000781 0.021503 -0.047616 +v 0.022724 0.013502 -0.034456 +v -0.008152 -0.049576 0.038990 +v -0.028740 0.003251 -0.047654 +v -0.031029 0.036061 0.028733 +v -0.047359 -0.010638 0.031419 +v -0.044590 -0.018125 0.023827 +v 0.034514 -0.016100 0.020082 +v 0.034945 -0.009139 0.008183 +v -0.046043 0.017086 0.015916 +v -0.037940 0.029662 0.054215 +v -0.033820 -0.021450 -0.025982 +v -0.047163 0.003422 0.025992 +v -0.007284 -0.034838 -0.033416 +v 0.031581 -0.025544 0.000803 +v -0.022212 0.034943 0.013095 +v 0.028847 0.003669 -0.025223 +v 0.059081 0.023626 0.024329 +v 0.033076 -0.015403 -0.016171 +v 0.048354 0.024132 -0.028255 +v 0.022841 -0.035150 0.033270 +v 0.004606 0.039022 -0.003377 +v 0.033172 0.023939 0.029960 +v 0.041257 0.012948 0.045156 +v -0.049586 -0.017281 0.053963 +v -0.040241 0.024166 0.005900 +v -0.026323 0.029198 -0.026181 +v 0.023358 -0.000815 -0.041380 +v 0.012574 0.010473 -0.043026 +v 0.000942 0.038132 0.011611 +v -0.021295 0.038473 0.045063 +v -0.044908 0.013735 -0.001771 +v 0.012776 0.030637 -0.028046 +v -0.042094 0.019017 0.030661 +v -0.043018 0.025848 0.045235 +v -0.046281 -0.013830 -0.003704 +v 0.029569 -0.028785 0.046275 +v -0.046377 0.012789 0.053509 +v -0.022093 -0.040224 -0.010752 +v -0.016830 0.040169 0.053888 +v 0.036664 0.009177 0.033892 +v -0.033321 -0.024083 -0.036461 +v 0.029299 0.028669 0.054148 +v -0.024698 -0.043939 0.020552 +v 0.055848 0.028809 -0.002886 +v -0.017948 -0.046703 0.054053 +v -0.022430 0.036165 0.024152 +v -0.021300 0.008854 -0.046338 +v -0.046111 -0.003416 0.011159 +v 0.004418 0.028609 -0.033188 +v 0.016270 -0.040514 0.047511 +v -0.010599 0.021217 -0.047594 +v 0.033048 0.019188 0.044978 +v 0.056273 0.029181 0.006789 +v -0.006785 0.035913 -0.006417 +v -0.035947 0.010120 -0.030525 +v -0.017211 -0.022748 -0.047510 +v 0.035918 -0.001253 0.012703 +v -0.042685 0.024046 0.022498 +v -0.034081 0.028652 -0.004307 +v -0.008846 -0.038494 -0.017786 +v -0.033808 0.034638 0.037120 +v -0.051071 0.002194 0.054081 +v -0.041270 -0.017623 -0.021701 +v 0.011821 -0.023663 -0.042993 +v 0.017883 0.035152 0.006385 +v 0.031799 -0.005143 -0.030785 +v 0.056781 0.032253 -0.025723 +v 0.013022 0.034778 0.013834 +v -0.011280 0.026306 -0.040134 +v 0.060393 0.033155 0.029377 +v 0.007923 -0.007487 -0.041540 +v -0.027429 -0.004752 -0.043001 +v 0.034072 0.007270 0.006716 +v 0.001038 -0.048802 0.053946 +v 0.015381 0.036309 0.044656 +v 0.044469 0.025856 -0.036241 +v 0.027639 0.027334 0.008421 +v -0.007378 -0.044415 0.020003 +v 0.030515 -0.032440 0.028900 +v -0.010162 -0.040175 -0.026260 +v -0.042336 0.026145 0.036300 +v -0.000261 0.031346 -0.041470 +v 0.042324 -0.000258 0.049843 +v -0.022120 -0.036251 -0.027294 +v 0.033661 0.000214 -0.003403 +v 0.062049 0.032018 0.020940 +v 0.053954 0.027860 0.034399 +v -0.034098 0.027827 0.021603 +v -0.014943 0.043408 0.037097 +v 0.030224 0.023666 0.038195 +v 0.021549 0.030292 0.022046 +v 0.044900 0.022639 0.040518 +v -0.051531 -0.011127 0.039483 +v -0.012914 0.039617 -0.001783 +v 0.040540 -0.010758 0.026750 +v -0.044460 -0.027930 0.034753 +v -0.002018 0.007012 -0.041318 +v -0.019198 0.019703 -0.043713 +v 0.030993 -0.033069 0.053492 +v 0.029225 0.016001 -0.002545 +v -0.035524 -0.038575 0.041985 +v 0.006909 0.033149 -0.010755 +v -0.028049 0.022650 -0.042033 +v -0.026814 -0.020046 -0.042316 +v -0.030401 0.037398 0.044426 +v 0.019445 -0.016903 -0.041474 +v 0.054752 0.028741 -0.011090 +v -0.043005 0.005835 -0.004556 +v -0.030591 -0.027230 -0.021134 +v 0.030860 0.017447 0.013197 +v -0.032391 0.026524 -0.018641 +v -0.029284 0.009981 -0.043054 +v -0.026398 -0.034570 -0.006143 +v -0.004476 0.015262 -0.041959 +v -0.009834 0.044318 0.053750 +v 0.004665 0.032200 -0.018708 +v 0.036883 -0.000781 0.021854 +v -0.007723 -0.012474 -0.046102 +v 0.030034 -0.025198 0.018977 +v 0.033685 0.015899 0.029575 +v 0.015725 0.035049 0.033184 +v 0.034300 0.010229 -0.032844 +v 0.006563 -0.030114 -0.039212 +v 0.004005 -0.021979 -0.043035 +v -0.033996 -0.031997 0.013511 +v 0.035081 0.009958 0.021751 +v 0.031832 -0.012561 -0.006782 +v 0.020393 0.010136 -0.041488 +v -0.030827 0.033386 0.051975 +v 0.057245 0.022598 -0.019131 +v -0.033713 -0.034150 0.027583 +v 0.054057 0.020405 -0.032500 +v -0.051043 -0.002771 0.021939 +v -0.010003 -0.028789 -0.047808 +v -0.044640 -0.002428 -0.000186 +v -0.038702 -0.024902 0.005794 +v -0.037892 -0.011521 -0.041707 +v -0.007123 0.038133 -0.014268 +v 0.015907 -0.030214 -0.024145 +v 0.035058 -0.016768 0.028612 +v 0.040696 0.021142 -0.029762 +v -0.023770 0.032949 0.004896 +v 0.030367 0.010195 -0.010045 +v -0.007388 0.041429 0.041680 +v -0.030856 0.029359 0.011328 +v -0.047910 0.004438 0.041097 +v -0.035730 0.002220 -0.037292 +v 0.025133 0.023845 -0.017124 +v -0.028288 -0.035358 0.004779 +v 0.002454 0.043703 0.034524 +v -0.011564 -0.031129 -0.040282 +v 0.015725 0.023902 -0.043697 +v 0.003100 -0.035554 -0.027373 +v 0.047680 0.026608 0.046842 +v -0.039062 -0.026737 -0.009349 +v 0.000657 -0.043611 0.015373 +v 0.054122 0.033539 0.016395 +v -0.034158 -0.030999 -0.014563 +v -0.047566 0.018787 0.047743 +v 0.033760 -0.021836 0.044131 +v 0.027263 -0.003796 -0.047342 +v 0.037293 -0.014822 0.053578 +v -0.035343 0.025574 -0.011234 +v -0.039040 -0.028980 -0.000734 +v -0.045380 0.008933 0.018415 +v 0.027872 0.009430 -0.038388 +v -0.013697 -0.042666 0.011632 +v 0.061036 0.034177 -0.000173 +v 0.017569 -0.023495 -0.037554 +v -0.046444 -0.016862 0.003705 +v -0.024257 -0.041675 0.047072 +v -0.008841 -0.045946 0.045661 +v -0.022762 -0.041897 0.035633 +v 0.024103 -0.018900 -0.029521 +v 0.010045 -0.043310 0.035704 +v -0.011344 -0.000014 -0.041349 +v 0.054298 0.020948 0.039098 +v -0.047294 -0.019271 0.016587 +v 0.003923 0.006751 -0.046064 +v 0.038757 -0.013296 0.014224 +v 0.004536 -0.042907 -0.009814 +v 0.005971 -0.039997 -0.021801 +v 0.018967 0.027801 -0.004574 +v 0.000401 -0.035489 -0.043365 +v -0.015673 0.006467 -0.041498 +v -0.009807 -0.045996 0.003355 +v -0.012937 0.031159 -0.025407 +v -0.019734 0.032189 -0.010541 +v 0.014650 -0.028941 -0.031460 +v 0.052646 0.034543 0.029224 +v 0.041684 0.002309 0.035977 +v 0.002742 0.028250 -0.047593 +v -0.041381 -0.030061 0.019686 +v -0.003968 0.031673 -0.027040 +v -0.051831 -0.011102 0.048117 +v -0.009616 0.037399 0.004519 +v 0.007980 -0.040399 0.003900 +v 0.031553 -0.007202 -0.013792 +v -0.045059 0.005552 0.008721 +v 0.025357 0.022292 -0.000813 +v -0.046024 0.012251 0.044494 +v -0.048171 -0.022145 0.041481 +v 0.018565 0.036408 0.018669 +v 0.002642 -0.005020 -0.046079 +v 0.012432 -0.039950 -0.010699 +v -0.018412 -0.013636 -0.041980 +v 0.012020 -0.030429 -0.046564 +v -0.042178 0.017021 -0.008210 +v -0.033826 -0.040428 0.053168 +v 0.023955 0.015472 -0.027238 +v -0.012781 -0.045003 0.035582 +v 0.010395 0.036784 0.023036 +v -0.040708 -0.033412 0.041068 +v 0.035555 0.013734 0.049679 +v 0.040568 0.020705 0.047255 +v -0.042314 -0.004952 -0.012806 +v 0.028418 -0.026510 -0.011514 +v 0.035000 0.014185 0.002569 +v 0.022758 -0.032554 0.011505 +v 0.000949 0.039141 0.019451 +v 0.033998 -0.006526 -0.000651 +v 0.016360 -0.036067 0.001338 +v 0.036258 0.000713 -0.010224 +v 0.019201 0.028813 -0.019461 +v -0.043738 -0.002424 -0.024311 +v 0.040272 0.013438 -0.030228 +v -0.032290 -0.040394 0.033148 +v 0.036985 -0.013128 0.042050 +v 0.012116 -0.034031 -0.018910 +v 0.049873 0.032800 -0.023623 +v -0.000526 -0.044960 0.028877 +v 0.012752 0.037260 0.053092 +v 0.031489 -0.019166 0.005310 +v -0.010951 -0.043099 -0.012642 +v -0.031986 0.017242 -0.030772 +v 0.017603 -0.043643 0.053874 +v 0.029586 -0.003896 -0.039462 +v -0.017882 0.034435 -0.002240 +v -0.028028 -0.037610 0.019812 +v -0.003916 0.042535 0.014561 +v 0.024405 0.034444 0.046427 +v -0.000265 -0.038475 -0.017185 +v -0.010608 0.039289 0.022033 +v -0.003681 -0.018752 -0.046107 +v -0.013798 -0.044008 0.025116 +v -0.036473 0.000834 -0.047586 +v -0.041612 -0.032768 0.053351 +v 0.030008 0.016477 -0.033763 +v -0.033042 -0.015495 -0.037836 +v -0.015126 -0.035063 -0.027489 +v -0.002865 0.001527 -0.046093 +v 0.026595 0.013395 -0.020992 +v -0.018400 -0.039734 0.000332 +v 0.012074 0.028920 -0.035422 +v -0.004271 0.025096 -0.042564 +v -0.007520 0.043810 0.028296 +v 0.043869 0.029938 -0.029487 +v 0.005079 0.021464 -0.043655 +v -0.024560 -0.031896 -0.022286 +v 0.027612 -0.019474 -0.014310 +v 0.063634 0.029338 0.010135 +v 0.033529 0.022754 -0.028853 +v 0.021967 0.020427 -0.036617 +v -0.033219 0.014860 -0.046422 +v -0.031771 -0.038781 0.013707 +v -0.004220 0.044778 0.046973 +v 0.017610 -0.032604 -0.010402 +v -0.040809 -0.010176 -0.032935 +v -0.020276 -0.044847 0.012653 +v 0.015654 -0.016334 -0.047756 +v 0.029081 -0.010897 -0.022177 +v -0.014293 0.036435 -0.017462 +v 0.026507 0.009203 -0.028974 +v 0.006031 -0.043154 0.021087 +v -0.029835 -0.011977 -0.043015 +v 0.027337 -0.030673 -0.001310 +v -0.048124 0.016161 0.033726 +v -0.046355 0.009008 0.030061 +v 0.025245 -0.037493 0.026719 +v 0.052064 0.034966 0.041743 +v 0.054094 0.036370 0.010062 +v 0.001309 -0.040793 -0.003910 +v -0.049387 -0.010721 0.012684 +v -0.018020 0.040366 0.011389 +v 0.026826 -0.015539 -0.040176 +v -0.035456 0.015037 -0.023498 +v 0.032745 0.008932 -0.020411 +v -0.042695 0.019363 0.001532 +v 0.004907 0.040339 0.053736 +v 0.041284 -0.002063 0.026981 +v -0.031472 -0.041848 0.046867 +v -0.030535 0.024262 -0.031206 +v -0.039560 0.003633 -0.023482 +v -0.043353 -0.007460 -0.005960 +v -0.041810 0.004181 -0.011829 +v 0.030715 0.023595 0.049751 +v 0.008347 -0.041274 0.011681 +v 0.020119 -0.003951 -0.047715 +v 0.030758 -0.011900 -0.030619 +v 0.025503 0.028705 0.038447 +v -0.039871 0.008016 -0.017643 +v 0.015627 -0.039969 0.030474 +v -0.038689 0.009026 -0.036661 +v 0.010737 0.041254 0.029783 +v -0.023557 0.023282 -0.047518 +v -0.014233 0.031687 -0.037204 +v -0.041251 0.014874 -0.017313 +v -0.022123 0.040812 0.030397 +v -0.045373 -0.024219 0.020819 +v 0.059743 0.031055 0.036493 +v -0.018609 0.025939 -0.036234 +v 0.008234 0.039528 0.043247 +v 0.033942 0.002018 -0.020951 +v 0.018431 0.026921 -0.028065 +v -0.007367 -0.044812 -0.005044 +v -0.035456 0.028133 0.036265 +v -0.015718 -0.037776 -0.014650 +v 0.015046 -0.038362 0.011901 +v -0.028956 -0.026481 -0.041959 +v 0.021439 -0.025594 -0.022339 +v 0.012474 -0.002534 -0.042008 +v 0.036728 0.011988 0.040259 +v -0.049507 -0.016240 0.028067 +v 0.053101 0.026852 -0.022278 +v 0.026957 0.019862 -0.022779 +v -0.046587 -0.015149 0.036524 +v -0.000031 0.036688 -0.020414 +v 0.013420 0.029759 -0.012765 +v -0.047751 -0.004932 0.027931 +v 0.050899 0.027258 -0.033865 +v 0.013949 -0.040509 0.022033 +v 0.038152 -0.009831 0.047967 +v -0.043738 -0.022834 0.047958 +v 0.029016 0.022672 0.024901 +v -0.038346 -0.018151 -0.015461 +v -0.013857 -0.049170 0.048631 +v -0.003015 -0.032917 -0.038266 +v 0.038750 0.012529 0.026896 +v -0.026448 0.030909 -0.019642 +v 0.031806 0.016679 -0.009248 +v 0.059853 0.023546 -0.002443 +v -0.021271 -0.039563 0.006412 +v -0.009517 -0.008259 -0.041317 +v 0.058557 0.034837 -0.014320 +v -0.041275 -0.013817 -0.027204 +v 0.033937 -0.028191 0.032621 +v 0.009657 -0.035544 -0.033706 +v 0.037377 0.023689 0.040489 +v -0.041491 -0.003511 -0.033271 +v -0.039991 0.018998 0.010699 +v -0.007697 0.031832 -0.040511 +v -0.001772 -0.039457 -0.030210 +v 0.062440 0.030420 -0.005400 +v 0.055585 0.029395 0.021303 +v -0.002502 -0.031551 -0.047763 +v -0.045844 -0.024881 0.028686 +v 0.001549 -0.045455 0.001766 +v 0.013305 -0.041921 0.041558 +v -0.021089 -0.006032 -0.041863 +v -0.027684 0.035917 0.009604 +v -0.042290 0.017205 0.021299 +v 0.015196 0.014982 -0.047625 +v -0.019665 -0.026578 -0.042106 +v -0.047632 0.002641 0.032488 +v 0.023378 0.034074 0.027516 +v 0.002713 0.037012 0.005341 +v 0.004974 -0.045618 0.049498 +v 0.004019 -0.045226 0.039288 +v 0.039850 0.002979 0.015753 +v -0.029306 -0.024999 -0.031405 +v -0.022547 -0.030584 -0.031299 +v 0.021793 -0.041367 0.041212 +v -0.049159 0.000105 0.006288 +v -0.023506 -0.037620 -0.019382 +v -0.023861 0.038947 0.018460 +v 0.022374 -0.026887 -0.014918 +v -0.039172 -0.003080 -0.041738 +v 0.018401 0.009351 -0.047681 +v -0.032930 -0.000783 -0.042303 +v 0.011309 0.022513 -0.039166 +v 0.026165 -0.028185 0.007022 +v 0.011543 -0.037466 -0.004494 +v 0.037970 -0.008137 0.038054 +v 0.049511 0.027090 0.039037 +v -0.031420 -0.036537 -0.000750 +v -0.033729 0.024747 0.000827 +v -0.002073 -0.043121 0.008872 +v -0.021003 -0.041994 0.026633 +v 0.036028 -0.022347 0.019509 +v -0.000097 0.043463 0.026284 +v 0.027063 -0.023162 -0.025707 +v 0.038617 -0.021268 0.052470 +v 0.035789 -0.026547 0.048077 +v 0.022522 0.031011 0.052354 +v 0.014433 0.036150 0.000696 +v -0.023444 -0.019431 -0.047749 +v -0.036771 0.028721 0.008929 +v 0.061189 0.023802 0.007746 +v -0.030633 -0.034945 -0.010976 +v 0.016481 0.017340 -0.040176 +v 0.009320 0.025907 -0.047494 +v 0.052614 0.035515 -0.010776 +v 0.011748 0.004038 -0.042107 +v 0.027686 0.022615 0.015175 +v -0.012623 -0.024573 -0.043474 +v 0.006580 0.040468 0.009785 +v -0.029621 0.031450 -0.008003 +v -0.021581 -0.032740 -0.040097 +v -0.019315 -0.047383 0.036506 +v -0.002469 0.039950 -0.004068 +v 0.000758 0.033726 -0.032263 +v 0.063305 0.027461 0.027112 +v -0.039382 -0.033366 0.024824 +v 0.003489 0.043981 0.048447 +v 0.021177 0.028154 0.006503 +v 0.060262 0.023369 0.039103 +v 0.033708 0.022830 -0.035204 +v 0.008802 0.034003 -0.002466 +v 0.014101 0.026972 -0.022675 +v -0.030084 -0.021272 -0.047753 +v 0.041588 0.005874 0.048107 +v 0.060114 0.036121 0.006202 +v -0.013723 0.029329 -0.046579 +v -0.039536 0.029736 0.040771 +v -0.032777 0.029908 0.027376 +v 0.063758 0.025000 0.020386 +v 0.053329 0.035715 -0.003917 +v -0.027079 0.015721 -0.041569 +v -0.042517 -0.031659 0.047274 +v 0.027491 -0.033874 0.015892 +v 0.030412 -0.022813 0.011549 +v 0.032967 0.012288 0.010257 +v 0.037213 0.005583 -0.000667 +v -0.038479 -0.022333 -0.004304 +v 0.039633 -0.006244 0.012312 +v -0.044253 -0.023445 0.008228 +v -0.004533 -0.045645 0.035789 +v -0.007806 -0.005285 -0.046512 +v 0.033971 -0.019513 -0.003613 +v -0.024224 0.028892 -0.032043 +v 0.038481 -0.020359 0.038968 +v -0.008898 0.034792 -0.029115 +v -0.017000 0.013745 -0.046392 +v -0.009112 -0.036987 -0.038922 +v 0.006992 0.039508 0.034437 +v -0.020768 0.028818 -0.023499 +v 0.035364 -0.026676 0.039644 +v 0.027522 -0.036970 0.048151 +v -0.023768 0.026859 -0.039489 +v 0.022739 -0.017045 -0.047756 +v 0.028350 0.002602 -0.042521 +v 0.012848 -0.012858 -0.042836 +v -0.048289 0.009760 0.011832 +v -0.021380 -0.041699 -0.004826 +v 0.057869 0.023737 0.030355 +v 0.022690 0.002443 -0.047641 +v 0.010672 -0.043514 0.048580 +v -0.000590 0.010918 -0.046077 +v -0.041309 -0.031768 0.031070 +v 0.027310 -0.017280 -0.020225 +v -0.044794 -0.005468 -0.019112 +v -0.051126 0.008935 0.053527 +v 0.007018 0.029755 -0.025864 +v 0.037002 -0.006281 0.024556 +v 0.019203 0.020652 -0.029238 +v 0.057845 0.023554 -0.013142 +v 0.038439 -0.007082 0.003636 +v -0.012749 0.029583 -0.031684 +v 0.037292 -0.014716 0.005935 +v 0.019926 -0.036103 0.019933 +v 0.029347 -0.004422 -0.025271 +v -0.050338 -0.005429 0.015517 +v 0.007733 -0.023245 -0.047664 +v 0.028833 -0.027930 0.025196 +v 0.004648 -0.044680 0.032178 +v 0.002717 0.025883 -0.040228 +v -0.033424 -0.030317 0.001128 +v -0.039807 -0.030883 0.012183 +v 0.022006 -0.011415 -0.041254 +v -0.043501 0.008694 0.002904 +v 0.007716 0.014457 -0.046594 +v -0.036798 0.020969 -0.020482 +v -0.044680 -0.014675 -0.010928 +v 0.045711 0.016729 0.041384 +v 0.037142 -0.010034 0.032395 +v 0.031333 -0.001458 -0.016274 +v -0.008370 0.009937 -0.041421 +v -0.037653 0.026743 0.048966 +v -0.006920 0.041743 0.007676 +v -0.027283 0.029854 -0.001629 +v 0.035414 0.006600 -0.009408 +v 0.037266 0.013941 0.017575 +v -0.019619 -0.047743 0.047842 +v -0.018307 0.039315 0.039949 +v -0.025684 0.005087 -0.042850 +v -0.043310 -0.010091 -0.022918 +v -0.027930 0.034679 0.039716 +v 0.038643 0.002465 0.053679 +v -0.011665 0.042273 0.015854 +v -0.052597 -0.002154 0.049160 +v -0.000335 -0.010194 -0.046097 +v -0.003620 -0.048791 0.025512 +v -0.030711 -0.032899 -0.019044 +v -0.052301 -0.004544 0.039974 +v 0.024805 0.003945 -0.037927 +v 0.041651 0.028059 0.041130 +v -0.028818 0.018467 -0.035947 +v -0.048565 0.002867 0.048065 +v 0.057896 0.038121 0.016943 +v -0.009352 -0.049166 0.033087 +v -0.011216 -0.041265 -0.001481 +v 0.037197 -0.022113 0.031622 +v -0.004679 -0.049995 0.049492 +v -0.049244 -0.020165 0.048798 +v -0.031063 -0.037163 0.038360 +v 0.006339 -0.046150 0.014358 +v -0.033902 -0.027326 -0.026597 +v -0.023446 -0.046144 0.043293 +v 0.022258 -0.022512 -0.042097 +v 0.017994 -0.027320 -0.042036 +v 0.005994 -0.013431 -0.041779 +v 0.033319 0.021859 0.017972 +v 0.023934 0.012965 -0.046459 +v 0.053349 0.022900 0.045492 +v 0.037525 0.001760 0.030485 +v 0.030344 0.027910 0.034142 +v -0.028975 0.032299 0.023321 +v 0.028821 -0.035405 0.042545 +v -0.049668 0.009078 0.022386 +v 0.024899 0.019127 -0.013668 +v 0.021662 -0.036180 -0.001094 +v -0.032325 -0.039746 0.025149 +v -0.038430 -0.030127 0.036828 +v -0.028895 0.037841 0.033942 +v -0.027466 -0.043581 0.032533 +v -0.001478 0.044379 0.038817 +v -0.008427 0.013630 -0.046092 +v -0.024688 0.033074 -0.014555 +v 0.020815 0.032267 0.033665 +v 0.033455 -0.017929 -0.009896 +v 0.011207 -0.045497 0.023082 +v -0.043968 -0.021422 0.036750 +v 0.038806 -0.001942 0.045571 +v 0.006158 -0.047253 0.025295 +v 0.015323 0.036183 0.038840 +v -0.048133 -0.006536 0.035418 +v -0.010263 -0.047521 0.016074 +v -0.050876 -0.009805 0.026038 +v -0.015919 0.002997 -0.046109 +v 0.020088 -0.028008 -0.034980 +v -0.028620 -0.008037 -0.047596 +v -0.036138 -0.016272 -0.028154 +v 0.000384 -0.025188 -0.047420 +v -0.047866 -0.006931 -0.001803 +v -0.024120 -0.000240 -0.046283 +v -0.004894 -0.042633 -0.017130 +v 0.018923 0.032998 -0.002094 +v 0.054040 0.022039 -0.025316 +v -0.005086 0.033574 -0.018611 +v 0.021424 -0.031280 -0.021474 +v 0.054913 0.036481 -0.022302 +v -0.024809 0.040300 0.040902 +v 0.042916 0.019533 -0.036579 +v -0.022690 0.037089 0.000811 +v -0.017210 -0.038763 -0.007460 +v 0.028409 -0.009220 -0.041249 +v -0.005869 -0.036527 -0.027338 +v -0.046886 -0.001372 0.017626 +v 0.029890 -0.026573 -0.004572 +v -0.048808 0.015444 0.040644 +v -0.016407 0.038362 0.024231 +v -0.002922 -0.047892 0.016610 +v -0.033225 0.010289 -0.037762 +v -0.037685 0.016181 -0.028628 +v 0.050897 0.032330 0.036180 +v 0.020116 -0.009722 -0.047741 +v -0.012401 -0.034292 -0.046862 +v -0.042121 0.020453 0.047832 +v 0.025800 0.026480 -0.004646 +v 0.035331 0.019836 0.025805 +v -0.032814 -0.013711 -0.047836 +v -0.032698 -0.007396 -0.041237 +v -0.032861 0.009338 -0.047732 +v -0.045758 0.000539 -0.014174 +v 0.036037 0.016765 -0.028424 +v 0.055627 0.028364 -0.029698 +v -0.039744 0.027200 0.018804 +v -0.001383 -0.049515 0.039775 +v 0.029628 0.021920 -0.004536 +v -0.010476 0.043917 0.033636 +v 0.038721 -0.001340 0.039768 +v 0.020514 -0.038332 0.005819 +v 0.042709 0.029527 0.046498 +v -0.047963 -0.011915 0.053215 +v -0.051875 0.003102 0.037294 +v 0.026736 0.029515 0.015065 +v 0.039422 -0.013921 0.022219 +v -0.031908 0.031102 0.033061 +v 0.057854 0.025929 0.002242 +v 0.032104 0.019537 0.034874 +v -0.016961 -0.019714 -0.042784 +v -0.045653 -0.012123 0.016645 +v -0.025885 0.036532 0.047661 +v 0.021792 -0.040567 0.030388 +v 0.021443 0.023784 -0.011825 +v 0.007879 -0.033191 -0.043978 +v -0.036109 0.030335 0.014258 +v -0.047587 0.001673 -0.003479 +v -0.039629 0.022291 0.026863 +v 0.035062 -0.011127 -0.011931 +v 0.031414 0.006431 -0.029942 +v 0.036548 -0.010369 -0.004518 +v -0.040722 0.011758 -0.007083 +v -0.015880 -0.003253 -0.041400 +v -0.035627 -0.023094 -0.031485 +v 0.013211 0.039031 0.017430 +v 0.000676 -0.000696 -0.041272 +v -0.018292 -0.042490 0.021321 +v 0.005926 0.043275 0.039833 +v 0.061658 0.030431 -0.010912 +v -0.038736 0.022522 -0.008032 +v 0.014055 -0.025400 -0.047809 +v -0.042449 0.026994 0.052339 +v 0.006369 0.036338 -0.015422 +v 0.009035 0.038431 0.000871 +v 0.028628 0.024840 0.002874 +v -0.019570 0.036898 -0.006916 +v -0.006395 -0.030328 -0.042296 +v -0.023005 0.021172 -0.039964 +v 0.019257 0.035271 0.013293 +v 0.060327 0.027608 -0.022938 +v -0.026809 -0.040686 0.005043 +v 0.035236 0.005094 0.012280 +v -0.019445 0.042656 0.049700 +v 0.014446 -0.040934 -0.000453 +v -0.014497 -0.048812 0.041398 +v 0.008893 -0.004482 -0.046072 +v -0.006876 -0.015445 -0.041498 +v 0.030892 -0.030765 0.020612 +v -0.048538 -0.008352 0.043919 +v -0.014362 0.022350 -0.043541 +v 0.062742 0.025902 -0.014282 +v 0.019101 0.033606 0.048898 +v 0.063789 0.028324 0.015997 +v -0.006509 0.039429 0.018291 +v 0.021244 -0.042048 0.049296 +v -0.039153 -0.002270 -0.027622 +v 0.030019 0.027694 0.026913 +v -0.021489 0.013607 -0.043216 +v -0.043632 -0.011966 0.000741 +v 0.033211 0.026560 0.042637 +v 0.025776 -0.032672 0.037193 +v -0.045587 0.016475 0.010173 +v -0.022475 0.038395 0.008843 +v -0.012841 0.010192 -0.046091 +v -0.004927 -0.049831 0.043938 +v 0.039668 0.006717 0.019750 +v -0.035991 -0.020609 -0.019803 +v 0.007566 0.036922 0.013832 +v 0.032405 0.000700 -0.028124 +v 0.021958 -0.036270 0.038727 +v 0.003049 -0.049088 0.043031 +v -0.046105 -0.008992 -0.010425 +v 0.006930 0.009169 -0.041849 +v 0.019736 0.005155 -0.043619 +v -0.011560 -0.038206 -0.033023 +v -0.015093 -0.035279 -0.040044 +v -0.043792 -0.019781 -0.005662 +v -0.045247 -0.020505 0.053260 +v 0.026745 -0.002160 -0.035149 +v -0.041296 -0.027433 0.050484 +v 0.024953 0.015171 -0.039134 +v -0.021948 -0.040540 0.015656 +v 0.040827 0.007544 0.037172 +v -0.051667 -0.001283 0.028879 +v 0.037934 -0.018971 0.023570 +v 0.025547 0.026675 0.023690 +v -0.035807 -0.023567 -0.012977 +v -0.027909 -0.030203 -0.034912 +v -0.027428 0.023974 -0.025181 +v -0.004461 -0.046526 0.005380 +v -0.013325 0.041164 0.008808 +v -0.040534 0.022407 0.040338 +v -0.020950 -0.029267 -0.047768 +v -0.042627 -0.019823 0.013060 +v -0.031277 -0.033721 0.008984 +v -0.011016 -0.048001 0.021789 +v -0.017109 0.025204 -0.047796 +v 0.023065 -0.016284 -0.036230 +v 0.012802 0.036457 0.028382 +v -0.012447 -0.012790 -0.041484 +v 0.006628 0.042011 0.024088 +v -0.037312 0.021017 0.002639 +v 0.048729 0.022608 -0.035590 +v -0.036029 0.033524 0.050551 +v 0.008991 0.031492 -0.031793 +v 0.033916 -0.025214 0.014868 +v -0.008705 0.019189 -0.042974 +v -0.000855 0.041494 0.007570 +v 0.033741 0.009540 -0.014181 +v -0.019732 -0.034667 -0.021816 +v -0.026612 0.010054 -0.047715 +v 0.023602 0.022710 -0.026947 +v 0.022589 -0.032831 -0.012380 +v -0.015899 0.031354 -0.020948 +v 0.031697 -0.024118 0.029496 +v 0.015304 0.034282 0.022408 +v 0.003364 0.041785 0.014679 +v -0.017104 -0.031313 -0.036961 +v 0.001332 0.016748 -0.046405 +v -0.036995 -0.024769 -0.022986 +v 0.057191 0.027325 0.014984 +v -0.026608 0.032970 0.015882 +v -0.015675 -0.044359 -0.000025 +v -0.039985 -0.011453 -0.018986 +v -0.024922 0.035467 0.028806 +v -0.045360 0.021772 0.036449 +v -0.045606 0.012701 0.037404 +v 0.003160 -0.014745 -0.046082 +v -0.035346 0.013030 -0.041793 +v -0.037288 0.013976 -0.033923 +v 0.000154 -0.028995 -0.043003 +v 0.024972 -0.034258 0.052756 +v 0.040856 0.008287 0.042644 +v -0.005858 0.003345 -0.041265 +v 0.035342 -0.003921 0.007307 +v -0.045220 -0.009839 0.009522 +v -0.045150 0.020926 0.026770 +v -0.012146 -0.037134 -0.021705 +v -0.000454 0.035392 -0.007963 +v 0.004913 0.031026 -0.038590 +v 0.014130 -0.044714 0.027428 +v 0.030648 -0.026647 0.036748 +v 0.052010 0.030443 0.044481 +v 0.033139 -0.024796 0.007484 +v 0.045508 0.030725 -0.034487 +v -0.028026 -0.041558 0.016168 +v -0.031566 0.021294 -0.021039 +v -0.009767 0.041552 0.048702 +v 0.028785 -0.016557 -0.032092 +v -0.004673 -0.046796 0.053676 +v -0.049118 -0.015468 0.021686 +v -0.047089 -0.006581 0.021883 +v -0.028433 -0.022656 -0.037794 +v 0.018267 -0.001562 -0.043408 +v -0.018392 -0.046767 0.024384 +v 0.016508 0.039628 0.050272 +v 0.012671 0.038117 0.008430 +v 0.038586 0.014876 0.053820 +v -0.031379 0.018711 -0.043048 +v -0.000034 0.036812 0.000866 +v -0.009782 0.033275 -0.034720 +v -0.043208 0.024637 0.031347 +v 0.016868 0.024723 -0.038640 +v 0.000217 -0.040039 -0.008994 +v 0.008401 0.034245 -0.021772 +v 0.025613 0.007418 -0.033823 +v -0.052254 0.002255 0.044397 +v 0.012225 0.035094 -0.010512 +v 0.032531 -0.019842 0.015303 +v -0.015314 0.037675 0.014973 +v 0.053326 0.029832 -0.016007 +v -0.051040 0.004997 0.029131 +v 0.017417 0.019718 -0.047620 +v -0.049840 0.013299 0.047906 +v -0.045376 -0.003272 0.005031 +v 0.018421 -0.038672 0.035726 +v 0.017764 -0.041937 0.018765 +v -0.006358 -0.040536 -0.008429 +v -0.041380 0.014297 0.002830 +v -0.049949 -0.017348 0.040440 +v -0.027732 -0.039703 0.043561 +v -0.009702 -0.042862 0.008279 +v 0.029009 -0.021557 -0.002113 +v -0.014262 0.036291 0.002433 +v 0.021694 0.032990 0.009203 +v 0.054913 0.028775 0.029361 +v -0.047967 0.017746 0.053364 +v -0.036484 0.023519 0.009445 +v -0.040745 0.009208 -0.028723 +v 0.045559 0.019292 -0.029867 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_4.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_4.obj new file mode 100644 index 0000000000000000000000000000000000000000..c28c2115db47fcdb0c3a1a5d39c4d3aa37d07391 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_4.obj @@ -0,0 +1,1028 @@ +o kp.000 +v -0.000500 -0.002482 0.068539 +v -0.000500 -0.001482 0.068539 +v -0.000500 -0.001482 0.067539 +v -0.000500 -0.002482 0.067539 +v 0.000500 -0.001482 0.067539 +v 0.000500 -0.002482 0.067539 +v 0.000500 -0.001482 0.068539 +v 0.000500 -0.002482 0.068539 +o kp.001 +v -0.002042 -0.004098 -0.055500 +v -0.002042 -0.003098 -0.055500 +v -0.002042 -0.003098 -0.056500 +v -0.002042 -0.004098 -0.056500 +v -0.001042 -0.003098 -0.056500 +v -0.001042 -0.004098 -0.056500 +v -0.001042 -0.003098 -0.055500 +v -0.001042 -0.004098 -0.055500 +o kp.002 +v 0.016521 0.070798 0.044847 +v 0.016521 0.071798 0.044847 +v 0.016521 0.071798 0.043847 +v 0.016521 0.070798 0.043847 +v 0.017521 0.071798 0.043847 +v 0.017521 0.070798 0.043847 +v 0.017521 0.071798 0.044847 +v 0.017521 0.070798 0.044847 +o mesh +v -0.044252 -0.024460 0.027722 +v 0.022540 0.064283 -0.028847 +v 0.044439 0.018065 0.066560 +v 0.010578 -0.032648 -0.057592 +v 0.032655 -0.037427 0.015544 +v -0.028541 0.037994 0.066807 +v -0.034350 0.019039 -0.031835 +v 0.021494 0.074980 0.037910 +v -0.001041 -0.051896 0.066993 +v 0.040595 0.006066 -0.023994 +v -0.009196 0.035126 0.014606 +v -0.014772 -0.044561 -0.011484 +v 0.007621 0.025734 -0.057939 +v 0.041419 -0.029698 0.063008 +v 0.037521 0.027308 0.018694 +v -0.049693 -0.002368 0.067104 +v -0.030276 -0.016828 -0.056426 +v -0.044766 0.013877 0.009006 +v 0.012280 0.045045 0.066742 +v -0.009818 -0.050748 0.027818 +v 0.029691 -0.032074 -0.022619 +v -0.042106 -0.015297 -0.015827 +v 0.010125 0.028646 -0.019610 +v -0.035906 -0.037877 0.062831 +v 0.048626 -0.006519 0.031338 +v 0.008844 0.077026 0.002743 +v 0.030733 -0.002937 -0.057883 +v -0.001129 -0.003821 -0.041415 +v -0.043290 0.022220 0.041170 +v 0.019970 -0.047867 0.043041 +v 0.014494 0.045075 0.032615 +v 0.044707 -0.012324 0.000193 +v -0.020675 0.013880 -0.057282 +v -0.015114 0.044715 0.041744 +v -0.016907 0.038169 -0.014054 +v -0.014775 -0.037840 -0.039792 +v 0.012176 -0.046519 -0.002993 +v 0.002565 0.046887 -0.039868 +v 0.016012 0.041227 0.003836 +v 0.029024 0.025545 0.044707 +v -0.025828 -0.031107 0.008912 +v 0.028118 0.022238 -0.041284 +v 0.034253 0.025966 -0.008743 +v -0.049966 -0.003179 0.040229 +v 0.041924 -0.005088 0.056720 +v 0.032661 -0.025659 0.037712 +v -0.025836 -0.004350 -0.035141 +v 0.007923 -0.042769 -0.027814 +v -0.009656 0.018167 -0.032376 +v -0.024232 -0.035576 0.040505 +v -0.032923 0.033121 0.019699 +v 0.023621 -0.045706 0.066915 +v -0.047118 -0.010174 0.008704 +v 0.005729 0.060738 0.048788 +v 0.020555 -0.018685 -0.041128 +v -0.028927 0.018410 -0.008688 +v -0.044423 0.020586 0.065800 +v 0.012621 -0.049218 0.019809 +v -0.008160 -0.020103 -0.056305 +v -0.023591 -0.024294 -0.024375 +v -0.039235 -0.017846 0.053045 +v 0.037191 0.005839 0.013079 +v 0.026045 0.073202 0.016031 +v -0.000824 -0.043705 0.046843 +v 0.046145 0.013834 0.037936 +v 0.031472 0.035594 0.063441 +v -0.004772 -0.040436 0.008240 +v -0.008869 0.046204 0.066012 +v 0.024582 0.067696 -0.008216 +v 0.025476 -0.028277 -0.002473 +v 0.031825 -0.012235 -0.016469 +v -0.018953 -0.048851 0.057213 +v -0.011882 0.031757 -0.047591 +v 0.017204 0.004637 -0.044000 +v -0.044111 0.005401 -0.011090 +v 0.036053 -0.016728 0.019393 +v 0.003138 0.038398 0.050255 +v 0.038102 -0.010125 -0.035292 +v -0.038539 0.008474 0.027010 +v -0.026539 0.029065 0.049247 +v 0.006976 0.070099 -0.016729 +v -0.032814 -0.033281 -0.009866 +v 0.009323 0.079518 0.023634 +v -0.001313 0.043065 -0.004034 +v 0.011123 -0.009251 -0.055506 +v -0.034607 0.001859 -0.052643 +v 0.034774 0.004124 -0.006153 +v -0.024682 0.037234 0.003072 +v 0.017964 0.037739 -0.034241 +v 0.025156 0.016629 -0.023586 +v 0.001730 -0.028726 -0.041838 +v 0.025161 0.014498 -0.057988 +v -0.027501 -0.042983 0.022717 +v -0.002947 0.010073 -0.055478 +v -0.040849 0.007509 0.053713 +v -0.034172 -0.020895 -0.038642 +v -0.021166 0.032269 -0.030449 +v 0.017657 0.032105 0.019072 +v 0.036083 0.006482 -0.041721 +v 0.027491 -0.033453 0.052692 +v 0.005534 0.063203 -0.033466 +v 0.020206 0.042856 0.050932 +v -0.016597 -0.003240 -0.055987 +v -0.041465 -0.001760 -0.027556 +v 0.025608 -0.020306 -0.057749 +v -0.001131 0.037335 0.032245 +v 0.046662 -0.018358 0.046580 +v -0.004012 0.038830 -0.025972 +v 0.010659 0.016943 -0.033064 +v 0.023137 0.060233 0.046839 +v -0.006359 -0.033937 -0.024003 +v 0.013778 -0.033643 -0.014439 +v -0.021086 0.031577 0.032071 +v -0.033992 -0.018368 0.000814 +v -0.017321 -0.020923 -0.041446 +v 0.017035 -0.036085 -0.040778 +v 0.026293 0.024202 0.006445 +v 0.020808 -0.036432 0.030716 +v 0.006060 0.045329 0.018071 +v 0.028916 0.036895 0.031242 +v -0.039461 -0.008140 0.023214 +v 0.038849 0.010514 0.052328 +v -0.015196 0.006800 -0.042863 +v -0.044818 -0.024757 0.066768 +v 0.019354 0.052817 -0.040017 +v 0.003917 -0.042371 0.031536 +v -0.041185 -0.030921 0.043925 +v -0.029791 0.021752 0.008950 +v -0.041014 -0.027740 0.012572 +v 0.011242 -0.050978 0.057071 +v -0.005583 -0.035668 -0.055559 +v 0.018148 -0.035944 0.009226 +v -0.020170 -0.044843 0.003343 +v 0.041973 0.016614 0.002662 +v -0.031235 0.008230 -0.020921 +v 0.039756 -0.026895 0.006453 +v 0.046632 -0.015616 0.067093 +v 0.000310 -0.046462 -0.014218 +v 0.022469 0.035895 -0.009757 +v -0.037526 -0.000292 0.001721 +v -0.014173 0.044334 0.025856 +v 0.038348 -0.024574 -0.010235 +v -0.019808 -0.030888 -0.052860 +v -0.014875 0.036748 0.055217 +v 0.047512 -0.006548 0.016272 +v -0.024983 0.024488 -0.045946 +v 0.036140 0.012622 0.026394 +v 0.048423 0.003722 0.066917 +v -0.013426 -0.050542 0.043214 +v -0.032119 0.021769 0.031539 +v -0.020819 -0.038703 -0.025574 +v 0.002449 0.049445 0.039813 +v -0.030177 -0.028659 0.024578 +v 0.016642 -0.027920 -0.028724 +v 0.040060 0.025991 0.055170 +v -0.028691 0.030285 -0.017203 +v 0.040163 -0.001490 0.042007 +v -0.038663 -0.015528 0.037708 +v -0.042075 0.022042 0.020531 +v -0.049729 -0.008131 0.053700 +v 0.039906 0.025693 0.032679 +v 0.045100 -0.021373 0.032227 +v 0.009388 0.032750 -0.045670 +v -0.000078 0.012139 -0.041712 +v 0.008437 0.073591 0.043370 +v -0.031188 -0.011071 -0.024058 +v -0.048403 0.002771 0.018842 +v 0.043625 -0.004358 -0.012954 +v -0.037797 0.006774 -0.038049 +v 0.031537 -0.040476 0.040447 +v 0.017599 0.033671 0.040758 +v 0.026012 0.030499 -0.022403 +v 0.029199 0.000244 -0.031355 +v -0.010069 0.033016 -0.000021 +v -0.037923 -0.007117 -0.041418 +v -0.022299 0.012147 -0.032015 +v 0.009368 0.032290 -0.004342 +v 0.028576 -0.028721 -0.036078 +v -0.038746 0.028826 0.056313 +v 0.047574 0.005497 0.023462 +v -0.006358 0.023830 -0.057426 +v -0.033962 0.033630 0.038291 +v 0.011350 0.008665 -0.055793 +v -0.020301 -0.032905 -0.004233 +v 0.033041 -0.016415 -0.046392 +v -0.030307 -0.042324 0.050785 +v 0.002182 0.035213 0.006976 +v -0.002220 -0.006354 -0.054990 +v -0.026341 -0.031812 -0.036033 +v 0.007690 -0.016027 -0.044079 +v 0.040106 -0.031407 0.048697 +v 0.036890 -0.021085 -0.025206 +v -0.039755 0.007121 0.040233 +v 0.040299 0.014683 -0.012471 +v 0.038774 -0.031981 0.027283 +v -0.012932 -0.039747 0.018708 +v -0.003498 0.032028 -0.011527 +v 0.019653 0.026244 -0.050991 +v -0.045509 -0.008579 -0.004881 +v -0.040457 0.019810 -0.002337 +v -0.015176 -0.008083 -0.043625 +v -0.015871 0.026441 -0.019904 +v -0.002171 -0.041029 -0.038319 +v -0.029644 -0.020833 -0.013392 +v 0.046306 -0.000144 0.004397 +v -0.021948 0.040239 0.015379 +v -0.034726 -0.003686 -0.014063 +v 0.027057 0.036297 0.011302 +v -0.036343 -0.023175 -0.026137 +v 0.026188 -0.038252 -0.010603 +v 0.006670 0.040842 -0.013841 +v 0.021575 0.075400 0.002853 +v -0.000379 0.025729 -0.026384 +v 0.035465 0.015212 -0.032360 +v 0.024223 -0.006032 -0.043091 +v -0.034877 -0.037898 0.033919 +v -0.024267 -0.042563 0.066877 +v 0.007715 -0.051526 0.041644 +v -0.032719 -0.029325 0.054043 +v 0.043628 0.016447 0.015452 +v -0.032597 0.014021 -0.046993 +v -0.013956 -0.040471 0.033873 +v -0.002795 -0.048517 -0.001244 +v 0.001336 -0.050503 0.014367 +v 0.039214 -0.017693 0.056705 +v -0.037224 0.019462 -0.019600 +v 0.029017 -0.038728 0.003418 +v -0.048618 -0.012330 0.030576 +v 0.033296 -0.039120 0.062240 +v 0.027244 -0.014147 -0.030770 +v 0.001564 0.046990 0.059093 +v 0.028703 0.024256 0.027596 +v -0.004680 -0.015459 -0.043847 +v 0.004790 -0.021803 -0.056291 +v 0.033226 -0.018014 0.000938 +v 0.024064 -0.044473 0.020673 +v 0.048878 0.002768 0.049466 +v 0.023522 0.031792 0.054983 +v -0.048784 0.009451 0.063401 +v 0.016034 -0.040799 0.052113 +v 0.022925 0.023097 -0.012084 +v -0.006202 -0.052072 0.055992 +v -0.036819 -0.031242 0.001414 +v 0.016532 -0.048792 0.031286 +v -0.018231 -0.031342 -0.016096 +v -0.033080 0.029119 -0.004705 +v -0.020628 0.026966 -0.006597 +v 0.038962 -0.004054 0.024485 +v 0.008006 0.038888 -0.027463 +v 0.024924 -0.027688 -0.048254 +v -0.044176 -0.013325 0.063084 +v 0.014537 0.053055 0.042559 +v 0.037429 -0.007859 0.009961 +v 0.035791 -0.004530 -0.046332 +v 0.024801 0.010698 -0.035249 +v -0.008082 0.043725 0.005744 +v 0.038628 -0.012656 0.038157 +v -0.005552 0.046751 0.049564 +v 0.004202 -0.038187 -0.005903 +v -0.024691 -0.045571 0.034113 +v 0.013059 0.069974 -0.006498 +v 0.019981 -0.039419 -0.022739 +v 0.013577 0.073900 0.014120 +v 0.027077 -0.023168 -0.013425 +v -0.045318 0.018403 0.054057 +v 0.024377 0.077768 0.026838 +v -0.025606 0.039968 0.044012 +v 0.027861 -0.030067 0.023325 +v 0.035085 -0.007809 -0.005685 +v 0.028351 0.037805 0.044165 +v 0.027409 -0.028759 0.009607 +v 0.019023 -0.000162 -0.056163 +v -0.001576 0.036253 -0.037466 +v -0.014833 -0.028203 -0.032684 +v -0.033349 -0.026046 0.036821 +v -0.024442 0.019028 -0.022554 +v 0.008714 0.035905 0.026222 +v -0.047912 -0.016856 0.044602 +v -0.049149 0.003564 0.030396 +v -0.036889 -0.015994 0.015077 +v 0.030639 0.016191 -0.003696 +v 0.032783 -0.000048 -0.018137 +v -0.016955 -0.040393 0.048023 +v -0.012478 -0.050560 0.066949 +v -0.039794 -0.024441 -0.007561 +v 0.006199 -0.038164 -0.046609 +v -0.019115 0.025473 -0.055750 +v 0.018441 0.065342 -0.018199 +v 0.006775 -0.040528 0.012940 +v 0.042330 0.022459 0.044380 +v -0.038963 -0.000123 0.013022 +v 0.004579 -0.032205 -0.030461 +v -0.035784 0.028014 0.067281 +v -0.034215 0.020733 0.048071 +v -0.034783 0.008509 -0.004956 +v -0.019098 -0.014792 -0.056796 +v -0.009125 -0.037747 -0.004350 +v -0.012658 -0.048595 0.010999 +v -0.041123 -0.007318 0.046344 +v 0.044871 -0.017550 0.012309 +v 0.003332 -0.035671 -0.018280 +v 0.032399 0.007435 -0.052927 +v 0.036557 0.026265 0.067241 +v 0.032652 0.017111 0.012494 +v -0.033379 -0.037396 0.014442 +v 0.040882 -0.009068 -0.024431 +v 0.014641 0.015502 -0.043411 +v -0.020317 0.030191 0.010771 +v -0.046229 0.015341 0.032884 +v 0.011141 -0.005432 -0.043944 +v 0.033953 0.022753 -0.020593 +v 0.017516 0.030937 0.007781 +v -0.045360 0.007940 -0.000346 +v 0.021359 0.038714 0.067204 +v -0.029945 -0.032976 -0.021811 +v 0.011511 0.038176 0.057450 +v -0.003434 -0.052088 0.038860 +v 0.020976 0.041225 0.024619 +v -0.006895 0.037430 0.041843 +v 0.001274 -0.051460 0.025288 +v -0.023156 -0.035475 0.029603 +v -0.038931 -0.013203 -0.032377 +v -0.046703 -0.016760 0.019851 +v -0.048989 0.007297 0.046085 +v -0.001343 0.032794 -0.050210 +v 0.029772 0.024369 -0.030718 +v 0.014881 -0.047388 0.009314 +v 0.012137 -0.044354 -0.015305 +v 0.038938 0.003866 0.032196 +v -0.044006 -0.019885 0.004978 +v -0.002858 0.046216 0.026262 +v 0.025187 -0.045171 0.055943 +v -0.024926 -0.017970 -0.033845 +v 0.048879 -0.007860 0.042714 +v -0.027570 0.038834 0.054590 +v 0.014467 -0.035997 -0.002040 +v 0.035528 0.015626 0.038409 +v 0.036796 0.025819 0.004723 +v -0.003256 -0.041971 0.023074 +v 0.021541 -0.036826 0.041919 +v -0.040532 -0.005340 0.034862 +v -0.017984 0.039949 0.066867 +v -0.024382 0.039886 0.026172 +v -0.036642 0.011499 0.015516 +v -0.010608 -0.041635 -0.030728 +v -0.027639 -0.026144 -0.047385 +v 0.013089 -0.026342 -0.038609 +v -0.028501 -0.039206 -0.000024 +v -0.024420 -0.039922 -0.011016 +v -0.018143 0.032480 0.021898 +v 0.015873 0.042616 0.015294 +v -0.007460 -0.044457 -0.021076 +v 0.012091 -0.041256 0.040490 +v -0.004507 0.045288 0.015507 +v 0.036216 -0.020943 0.046402 +v -0.008531 -0.026699 -0.042620 +v 0.040633 -0.027629 0.016864 +v -0.039261 0.010572 -0.028135 +v 0.006144 0.003988 -0.043760 +v 0.028164 0.033952 0.001186 +v 0.016240 0.037092 -0.019065 +v -0.000718 0.036601 0.020496 +v 0.009694 -0.048279 0.067004 +v -0.027129 -0.003440 -0.057502 +v 0.018108 0.032591 0.029586 +v -0.030587 0.010389 -0.056929 +v 0.022522 -0.010470 -0.057004 +v 0.007963 0.036914 0.038915 +v 0.012635 0.078281 0.033327 +v 0.030046 0.012284 -0.015630 +v 0.029687 -0.041359 0.028991 +v -0.030773 0.022098 0.019143 +v -0.011237 0.035830 0.031558 +v 0.048786 0.002523 0.038212 +v 0.016106 0.023511 -0.027404 +v 0.002945 -0.044939 0.056280 +v 0.039112 0.000612 -0.033906 +v 0.008463 0.035183 0.015053 +v 0.015724 0.065899 0.042683 +v -0.033434 0.030733 0.005373 +v 0.034921 -0.020939 0.028950 +v 0.012566 0.043900 -0.040322 +v 0.008633 0.055076 -0.040209 +v 0.044413 0.006038 -0.003467 +v 0.042021 -0.015217 -0.011824 +v -0.042910 -0.028383 0.057459 +v -0.029618 0.004922 -0.030386 +v -0.026672 -0.036811 0.058494 +v 0.018661 0.028209 -0.004293 +v -0.036209 0.009253 0.005042 +v -0.006066 -0.036441 -0.013897 +v 0.011861 -0.040190 0.024268 +v 0.026217 0.025914 0.017967 +v -0.046383 0.013017 0.021695 +v 0.034202 -0.020062 -0.037085 +v -0.049873 0.001611 0.057195 +v 0.019680 -0.028462 -0.056799 +v -0.029135 0.027105 -0.027177 +v -0.027917 -0.026441 -0.003276 +v -0.012538 0.041179 -0.005565 +v 0.019618 0.029877 -0.040198 +v -0.021760 -0.045415 0.013520 +v 0.047050 -0.014133 0.025109 +v -0.035684 -0.010479 -0.005029 +v -0.006855 0.040817 -0.014793 +v -0.036380 0.030597 0.028687 +v 0.009109 0.045838 0.047542 +v 0.028822 0.036158 0.021302 +v -0.005308 -0.030873 -0.034242 +v 0.029608 0.007459 -0.024605 +v 0.005734 -0.000485 -0.054900 +v 0.045482 -0.005700 0.066376 +v -0.047279 0.002389 0.007596 +v 0.005890 0.044279 0.008170 +v 0.042166 0.009421 0.061854 +v -0.017818 0.034128 0.042437 +v 0.029418 0.016745 -0.049369 +v 0.024788 -0.022438 -0.022987 +v -0.019620 0.030454 -0.040015 +v -0.017390 -0.048144 0.022159 +v -0.009263 0.015055 -0.043423 +v -0.031626 -0.025810 0.015331 +v 0.043469 -0.025680 0.040846 +v -0.016828 -0.037254 0.010106 +v -0.010768 0.035708 -0.034230 +v 0.013115 0.062544 -0.027024 +v -0.018040 0.022160 -0.029392 +v 0.048205 -0.012496 0.056036 +v -0.041405 0.014872 -0.010667 +v 0.019449 0.044442 0.041378 +v -0.011072 -0.043501 0.055354 +v -0.044898 -0.024137 0.037385 +v -0.023827 -0.033940 0.017958 +v -0.037631 -0.009124 0.005691 +v -0.011256 0.004819 -0.055440 +v -0.043486 -0.001279 -0.018051 +v -0.028154 0.030371 0.059204 +v -0.006576 0.039961 0.059019 +v 0.042958 0.019871 0.025615 +v -0.034930 -0.007678 -0.051221 +v 0.034506 0.032582 0.050854 +v 0.039883 -0.011025 0.049454 +v 0.036620 0.001947 0.003008 +v -0.023769 -0.023734 -0.057878 +v 0.034084 -0.032416 -0.003338 +v 0.009808 0.041856 -0.004395 +v -0.036640 -0.018505 0.024312 +v 0.046716 0.005016 0.013163 +v -0.006099 -0.042734 0.038824 +v -0.022452 -0.047144 0.044090 +v 0.035700 0.031263 0.040972 +v 0.038110 -0.033611 0.036667 +v 0.023761 -0.034878 -0.030641 +v -0.038767 -0.032745 0.024266 +v -0.037731 0.027312 0.013918 +v -0.013160 0.037492 -0.023841 +v 0.005530 -0.039583 0.003599 +v 0.020842 -0.035581 0.020180 +v 0.034748 0.018726 0.050073 +v -0.024145 0.026171 0.002821 +v 0.020885 -0.042941 -0.003418 +v -0.036474 0.031338 0.047075 +v 0.044713 0.017900 0.056436 +v -0.025106 0.035211 -0.007324 +v 0.031213 0.026301 0.058335 +v 0.024170 -0.043109 0.010167 +v 0.033819 -0.019646 0.010162 +v 0.031555 -0.012437 -0.055501 +v 0.013489 0.018493 -0.057100 +v 0.007188 -0.040658 -0.036894 +v 0.002095 -0.052277 0.049121 +v 0.008671 0.036345 -0.036516 +v -0.001333 -0.043500 -0.028246 +v -0.017017 0.041520 0.007018 +v -0.006174 -0.038236 -0.046655 +v -0.036013 0.016632 0.039764 +v 0.033785 -0.026977 0.054801 +v -0.048816 -0.006052 0.021496 +v 0.030852 -0.007763 -0.024470 +v 0.034160 0.012166 0.004872 +v -0.031509 0.017380 0.000091 +v -0.037219 0.019382 0.058322 +v 0.025726 0.027812 0.035546 +v -0.005619 0.005144 -0.043954 +v 0.006902 0.045947 0.027491 +v -0.035660 -0.027759 -0.016652 +v 0.001603 0.018056 -0.031972 +v -0.042187 -0.002142 0.053885 +v -0.026970 0.025933 -0.036987 +v -0.028804 0.026306 0.039945 +v 0.026199 0.002782 -0.039573 +v -0.006718 0.029373 -0.020957 +v -0.025583 0.027703 0.024092 +v 0.035064 0.031214 0.027320 +v -0.041690 -0.010005 -0.023767 +v 0.015876 -0.039584 -0.030825 +v 0.032825 -0.031643 -0.012285 +v 0.041686 -0.020464 -0.002875 +v 0.013671 -0.017865 -0.056412 +v 0.043637 -0.025985 0.054988 +v -0.011809 0.015173 -0.056350 +v -0.036355 -0.022420 0.045843 +v 0.012706 0.036216 0.047854 +v -0.012981 -0.046838 -0.001665 +v 0.046552 0.013275 0.048663 +v -0.032952 -0.017679 -0.047913 +v 0.017064 0.073820 0.023506 +v 0.016671 0.061423 -0.035149 +v 0.028412 -0.031454 0.043862 +v 0.042580 0.006176 -0.013898 +v -0.000091 0.043938 0.067304 +v 0.038552 0.014366 -0.021480 +v -0.042109 0.023506 0.032444 +v -0.021778 0.003928 -0.035291 +v -0.040708 0.021934 0.007542 +v -0.014944 0.044767 0.058969 +v 0.006365 -0.049234 0.007207 +v -0.021618 -0.033019 -0.043401 +v 0.014670 0.059184 0.049122 +v -0.036671 0.023446 -0.010440 +v 0.020152 -0.028611 -0.018722 +v -0.047576 -0.017947 0.055879 +v 0.014033 0.029065 -0.011732 +v -0.041627 0.008973 -0.019809 +v -0.007107 0.046218 0.033967 +v 0.008050 -0.051224 0.032866 +v -0.031029 -0.029927 0.045439 +v 0.023638 0.068883 0.045415 +v -0.033119 -0.012852 -0.014412 +v -0.021597 -0.013183 -0.040388 +v 0.032395 -0.016199 -0.007594 +v -0.037747 -0.029886 0.066553 +v -0.001070 -0.015104 -0.055447 +v 0.049058 0.000881 0.057960 +v -0.032943 -0.040065 0.042095 +v 0.038661 0.008213 0.041651 +v 0.023285 0.030115 -0.031138 +v 0.006927 0.068385 -0.025412 +v -0.011894 0.030069 -0.012343 +v 0.043475 -0.023680 0.024028 +v 0.024694 0.040151 0.059343 +v -0.022921 0.041279 0.035885 +v -0.019831 0.042997 0.051915 +v 0.032384 -0.039858 0.049612 +v -0.014019 0.043562 0.016098 +v 0.027526 -0.031212 0.031987 +v -0.045069 -0.024269 0.050256 +v 0.032111 -0.024090 0.017467 +v -0.040486 -0.031443 0.034331 +v -0.009650 -0.010558 -0.055522 +v 0.017276 -0.043419 0.061657 +v -0.005698 0.038257 0.050472 +v 0.037186 0.019284 0.060217 +v 0.005143 0.016931 -0.056236 +v -0.022497 0.033642 -0.022007 +v 0.005873 0.031441 -0.012288 +v -0.023289 0.004131 -0.056887 +v 0.001054 0.033717 -0.003447 +v -0.027468 0.019177 -0.052045 +v -0.009344 0.025749 -0.028674 +v -0.016214 -0.042391 -0.019567 +v -0.022156 0.023736 -0.014218 +v 0.009382 0.010575 -0.039069 +v -0.015504 -0.025213 -0.057639 +v -0.014031 -0.035649 -0.048096 +v -0.004334 -0.049714 0.008232 +v -0.036069 -0.037178 0.054027 +v -0.029665 0.035096 0.012245 +v -0.025024 -0.035858 0.050256 +v -0.019661 -0.000846 -0.041819 +v -0.032400 -0.002805 -0.023776 +v -0.014375 -0.050015 0.034953 +v -0.043980 -0.016518 -0.002881 +v 0.041329 0.003229 0.055943 +v 0.020805 0.018044 -0.031541 +v -0.039903 -0.000137 0.025377 +v 0.003457 -0.036021 -0.055023 +v -0.030432 -0.025382 0.005120 +v 0.004549 -0.047619 -0.005978 +v 0.002612 0.042792 -0.032354 +v -0.033944 0.004993 -0.013823 +v -0.013139 -0.050732 0.051669 +v -0.041849 0.024636 0.048914 +v 0.021784 -0.021385 -0.033451 +v 0.035127 -0.033566 0.007760 +v -0.014589 -0.030920 -0.024928 +v 0.044857 0.009242 0.004879 +v 0.031855 0.019605 0.020285 +v 0.045298 -0.003515 -0.003019 +v 0.020296 0.077199 0.010792 +v 0.022065 0.041115 0.032721 +v 0.023793 -0.045665 0.036162 +v -0.048797 0.007614 0.037929 +v 0.049137 -0.005595 0.050548 +v 0.018377 0.072178 -0.012276 +v 0.038285 0.004896 0.024138 +v -0.024429 -0.027619 -0.012359 +v -0.002047 0.001901 -0.054892 +v 0.041202 -0.020848 0.064068 +v 0.001558 0.040092 -0.020196 +v 0.046408 -0.007807 0.007078 +v 0.042293 -0.000989 -0.020215 +v -0.026162 -0.045247 0.058148 +v 0.033293 0.031209 0.012278 +v 0.037941 -0.034047 0.056046 +v 0.020072 -0.031696 -0.007447 +v -0.040458 -0.021091 0.061017 +v -0.014786 -0.037032 0.002300 +v 0.025656 0.022505 -0.004327 +v 0.015482 -0.034442 -0.048514 +v 0.047687 -0.014041 0.037683 +v 0.012768 -0.050523 0.049173 +v 0.024771 -0.038499 0.060438 +v -0.037341 0.000557 -0.043795 +v -0.041128 0.000813 0.045020 +v 0.020718 0.038213 -0.002274 +v -0.020161 -0.043440 -0.005208 +v -0.046397 0.000004 -0.000712 +v -0.033491 0.016704 -0.039506 +v 0.016553 -0.011321 -0.043860 +v -0.035553 0.015418 0.024402 +v 0.008833 -0.042723 0.047640 +v 0.035004 -0.032946 0.067019 +v 0.021234 -0.032933 0.002505 +v -0.032546 -0.026349 -0.032403 +v 0.028588 0.037665 0.052542 +v -0.030080 0.036466 0.030561 +v -0.038242 0.013138 0.046560 +v -0.010854 -0.001411 -0.044003 +v 0.002304 0.030108 -0.019557 +v -0.026375 -0.041896 0.007356 +v -0.015190 0.044454 0.033808 +v 0.016412 0.044105 0.059381 +v 0.036134 -0.009328 0.002022 +v 0.000383 -0.028305 -0.057335 +v 0.002386 -0.052307 0.059134 +v 0.031738 0.021356 0.034480 +v -0.016802 0.031080 0.003657 +v -0.046855 0.014578 0.043862 +v -0.007918 -0.050228 0.017111 +v -0.044555 -0.003706 0.061272 +v -0.006095 -0.046869 0.061917 +v 0.011471 -0.031983 -0.024385 +v -0.042085 0.013520 0.062620 +v 0.040247 0.021882 0.010593 +v 0.010319 0.033676 0.006193 +v 0.038533 -0.010365 0.029144 +v 0.038698 0.020435 -0.005376 +v -0.015068 0.012560 -0.035039 +v 0.021404 0.021779 -0.057200 +v 0.009078 0.045529 0.056222 +v 0.027763 0.031293 -0.013262 +v -0.016574 -0.038840 0.026666 +v 0.004455 -0.042948 0.040038 +v -0.008165 -0.027849 -0.057474 +v 0.028074 -0.007164 -0.034137 +v -0.005410 -0.052090 0.047064 +v -0.039513 -0.014887 0.045600 +v 0.004339 -0.041577 0.020238 +v -0.042274 -0.009489 0.056609 +v -0.013640 -0.034954 -0.010985 +v -0.020005 -0.040617 0.057223 +v 0.033261 0.013627 -0.042758 +v -0.001274 -0.039428 -0.000559 +v -0.028543 -0.018273 -0.022975 +v -0.039326 -0.000961 -0.036464 +v 0.005981 0.053937 0.045041 +v 0.039423 -0.018965 -0.018207 +v -0.048155 -0.003869 0.013064 +v 0.043039 -0.020069 0.004896 +v -0.038911 -0.007613 0.014929 +v -0.045106 -0.002432 -0.009546 +v 0.016101 0.037182 -0.026778 +v 0.048283 -0.004204 0.024000 +v 0.020655 0.032547 0.047727 +v 0.000700 0.029085 -0.057765 +v 0.046616 0.011112 0.028622 +v -0.048284 0.010455 0.053044 +v 0.038433 0.008243 -0.031148 +v -0.022425 0.035867 0.062128 +v -0.012699 -0.015410 -0.044107 +v 0.035529 -0.025861 -0.019361 +v 0.011506 0.029874 -0.052804 +v 0.038497 -0.002562 0.016996 +v -0.005946 -0.046872 -0.009835 +v 0.020397 -0.040888 -0.015250 +v -0.044680 -0.020458 0.012561 +v -0.005760 0.036585 0.026228 +v 0.024968 0.071146 0.008766 +v -0.009255 0.030315 -0.054660 +v -0.031642 0.025198 0.054827 +v -0.010047 -0.042501 0.045604 +v 0.021021 0.011416 -0.042669 +v 0.004202 -0.009358 -0.042939 +v -0.040126 0.002294 0.032583 +v 0.007029 0.024000 -0.026457 +v -0.000610 0.044370 0.004219 +v -0.034501 -0.023409 0.029718 +v 0.015277 0.071279 0.001778 +v -0.043421 0.004801 0.060332 +v -0.006645 0.046544 0.042047 +v -0.049605 -0.005082 0.032622 +v -0.005847 -0.042169 0.030208 +v 0.032979 -0.025144 -0.031034 +v 0.020931 0.052412 0.046588 +v -0.017638 -0.044604 0.063358 +v -0.020562 -0.036477 -0.034599 +v 0.024844 -0.045382 0.048392 +v 0.013386 0.069989 -0.021355 +v -0.020428 0.033345 0.050388 +v 0.047999 0.008218 0.056782 +v 0.000561 0.037899 0.041290 +v -0.037862 0.011687 0.034451 +v 0.014861 0.071355 0.037628 +v 0.001735 -0.020559 -0.043857 +v 0.024688 0.069495 -0.000501 +v 0.003268 0.039836 0.057796 +v 0.009205 0.067402 0.047459 +v 0.013862 0.039323 -0.012359 +v 0.044078 -0.009708 -0.007252 +v 0.022086 0.056426 -0.034106 +v 0.040593 -0.000322 0.049451 +v -0.050012 0.000314 0.048388 +v 0.013796 -0.021053 -0.043758 +v -0.017849 -0.039343 0.040720 +v 0.028109 0.003997 -0.057961 +v 0.030360 -0.023936 -0.042088 +v 0.020194 0.022639 -0.021298 +v 0.024389 0.068842 -0.015531 +v -0.029455 -0.030215 0.032122 +v 0.029780 -0.024383 0.002400 +v -0.046962 0.009177 0.015422 +v -0.008770 -0.002974 -0.055174 +v 0.017953 0.078597 0.017972 +v -0.024596 -0.030871 0.001576 +v -0.039108 0.028208 0.040257 +v -0.030086 0.013744 -0.016189 +v -0.013308 0.045285 0.049416 +v 0.019552 0.044750 -0.038228 +v -0.033009 -0.039035 0.025542 +v 0.009288 0.078473 0.010314 +v 0.003808 -0.044674 -0.022065 +v 0.002230 0.046950 0.049787 +v 0.016874 -0.049429 0.066188 +v 0.023359 0.072081 0.031316 +v -0.002084 0.035954 0.013144 +v 0.042259 -0.011598 0.060184 +v -0.038051 0.028086 0.022036 +v -0.041016 -0.024756 0.000440 +v -0.004586 0.014519 -0.036149 +v 0.031867 -0.031894 0.059840 +v -0.033742 0.033938 0.062252 +v -0.028418 -0.010630 -0.032528 +v -0.018138 0.039905 -0.001103 +v -0.048857 -0.009584 0.067222 +v 0.008819 0.075598 -0.004737 +v 0.008539 0.047818 0.035719 +v 0.024636 -0.013723 -0.037785 +v -0.025011 -0.037655 -0.019319 +v -0.007870 -0.007996 -0.044210 +v -0.035982 -0.000616 -0.007642 +v 0.020701 0.073643 -0.005595 +v -0.039518 -0.010612 0.030048 +v 0.034068 0.027831 -0.001784 +v -0.046764 -0.019217 0.032483 +v 0.019679 -0.046156 0.015228 +v 0.016475 -0.044054 -0.008984 +v -0.033115 -0.017394 -0.006253 +v 0.028633 -0.022001 -0.050605 +v 0.039618 -0.005212 0.035890 +v 0.046315 -0.019308 0.054784 +v -0.043491 -0.008286 -0.016437 +v 0.002660 0.034425 -0.043853 +v -0.035679 0.007376 -0.045233 +v 0.037245 -0.016414 -0.031728 +v -0.025176 0.027461 0.016951 +v 0.027857 -0.039946 0.067083 +v 0.007769 -0.024898 -0.043557 +v 0.010367 0.074113 -0.011669 +v 0.013007 -0.039135 0.016123 +v 0.017669 -0.048879 0.054089 +v 0.037364 0.029539 0.060967 +v -0.030698 0.036570 0.047653 +v -0.018816 -0.048256 0.029679 +v 0.037952 -0.009920 0.018571 +v -0.044144 0.019266 0.026747 +v 0.001758 0.046734 0.032332 +v -0.000974 -0.051900 0.032195 +v -0.011957 0.036705 0.047486 +v 0.035049 0.003156 -0.047942 +v 0.022236 0.038495 0.005827 +v -0.012422 -0.033872 -0.055794 +v -0.030288 -0.038619 0.067064 +v 0.034357 -0.000851 -0.011290 +v 0.045827 0.012077 0.021554 +v 0.023263 -0.032945 -0.038034 +v 0.014756 0.043635 0.022303 +v -0.048993 -0.012103 0.037621 +v -0.021383 -0.023844 -0.031063 +v 0.023412 -0.045530 0.029123 +v 0.036270 -0.019257 0.037425 +v 0.017988 0.036572 0.059709 +v 0.043497 0.019654 0.033144 +v -0.005052 0.034989 0.006842 +v 0.011204 -0.043493 0.056456 +v -0.019358 0.027929 -0.048387 +v 0.035744 0.011741 0.016616 +v -0.032954 -0.036198 0.004561 +v 0.030533 0.024728 0.051511 +v -0.027098 -0.033676 -0.028185 +v -0.043098 0.018900 0.013575 +v -0.027954 -0.041800 0.014447 +v -0.049533 -0.010062 0.044571 +v -0.003065 0.017012 -0.056266 +v -0.036771 -0.033059 0.010145 +v -0.028450 0.011137 -0.026626 +v -0.039364 -0.020490 -0.019559 +v -0.036822 -0.036398 0.046547 +v 0.015935 0.026130 -0.056856 +v -0.034728 -0.019596 0.009548 +v -0.042275 -0.027329 0.021702 +v -0.039866 0.004434 -0.031848 +v -0.002371 -0.041364 0.014687 +v -0.029101 -0.010069 -0.058074 +v -0.030526 -0.002301 -0.030472 +v 0.018468 0.064970 0.049376 +v 0.022027 -0.043447 0.003391 +v 0.046908 0.011608 0.066762 +v -0.000257 0.041571 -0.012893 +v -0.019549 -0.048578 0.050311 +v -0.007101 0.046517 0.056945 +v -0.023481 0.030433 0.038475 +v -0.033424 0.025141 -0.018763 +v 0.008174 -0.049740 0.014292 +v -0.023004 0.035048 -0.014699 +v 0.041745 0.014275 -0.005249 +v -0.027391 0.026757 0.031617 +v 0.042059 -0.027476 0.032987 +v 0.038265 -0.027192 -0.001841 +v -0.033278 0.016287 0.006718 +v 0.012038 -0.038469 0.007450 +v 0.008253 -0.050676 0.024866 +v 0.041901 0.023447 0.063195 +v 0.037194 -0.033202 0.020747 +v 0.012161 0.001761 -0.055493 +v 0.039100 0.027366 0.047870 +v 0.036270 -0.009891 -0.042135 +v -0.041374 0.025269 0.061884 +v 0.028140 -0.038245 -0.003327 +v -0.038718 0.013982 0.053810 +v 0.023165 0.025905 -0.044447 +v -0.047588 -0.018541 0.066538 +v 0.048498 0.000923 0.028471 +v -0.009123 0.045102 0.021360 +v -0.043804 -0.013519 -0.009483 +v 0.000744 -0.037253 -0.012190 +v 0.023509 0.063163 -0.022176 +v -0.047390 0.004024 0.067300 +v 0.037425 -0.034750 0.043422 +v 0.013231 -0.040176 0.030923 +v 0.047183 -0.001698 0.011531 +v -0.028890 -0.027536 -0.040650 +v -0.004588 -0.044220 0.053477 +v 0.010623 0.058659 -0.033874 +v 0.049108 -0.006663 0.059343 +v 0.029635 -0.040642 0.020799 +v 0.028999 -0.017909 -0.018824 +v 0.014909 -0.049663 0.037787 +v 0.019258 0.077791 0.031242 +v -0.036849 0.025838 -0.000169 +v -0.011208 -0.033847 -0.019336 +v 0.021303 0.039856 0.012432 +v -0.043299 0.015200 0.001646 +v 0.008779 0.078014 0.016991 +v 0.013997 -0.024980 -0.057510 +v 0.011289 -0.035954 -0.008664 +v 0.006911 -0.028998 -0.037599 +v 0.042372 -0.009395 -0.017187 +v 0.047952 0.008023 0.041940 +v 0.029646 0.031505 -0.005211 +v 0.024122 0.072430 0.022392 +v 0.025079 -0.031988 0.016459 +v 0.043889 0.001450 0.062162 +v -0.041783 -0.030096 0.050529 +v 0.018293 0.014506 -0.036618 +v -0.036756 -0.024374 0.055984 +v -0.012694 0.021739 -0.057474 +v 0.003909 0.005929 -0.055089 +v 0.008879 0.048652 -0.037436 +v -0.025782 0.023079 -0.004927 +v 0.035405 -0.036371 0.031001 +v -0.037054 -0.013455 -0.039558 +v 0.004676 -0.007674 -0.054961 +v -0.047864 -0.010895 0.016919 +v 0.030078 0.019221 0.004170 +v 0.033670 0.010406 -0.002450 +v 0.023506 0.027489 0.011506 +v -0.049435 -0.010103 0.060612 +v 0.021311 -0.037671 0.049599 +v 0.022166 0.034303 -0.018083 +v 0.046370 -0.014503 0.017992 +v 0.014943 0.077428 0.005285 +v 0.022445 0.029645 0.025546 +v -0.046308 -0.009487 0.001626 +v 0.041255 0.021821 0.018499 +v 0.005509 0.042123 0.063578 +v 0.014133 0.034734 0.034395 +v -0.028098 -0.043761 0.039459 +v 0.037599 -0.003795 -0.040028 +v 0.004994 0.031910 -0.051763 +v -0.027220 0.037740 0.020633 +v 0.026234 0.026151 -0.035976 +v -0.006090 0.034701 -0.041964 +v -0.026269 -0.023540 -0.018438 +v 0.013323 0.068054 -0.012924 +v 0.007333 -0.015787 -0.055754 +v 0.037458 -0.023867 0.059617 +v 0.024416 0.034625 0.062852 +v 0.018886 0.067446 -0.024424 +v -0.029482 -0.030834 0.039062 +v 0.017907 -0.001865 -0.043645 +v -0.029051 0.033356 -0.001760 +v -0.021497 -0.008704 -0.056633 +v -0.010018 -0.048321 0.003973 +v 0.045143 0.011226 0.011820 +v -0.032412 0.028339 -0.011207 +v 0.023920 0.029880 0.042741 +v -0.005318 0.033141 -0.004734 +v 0.044259 0.000726 -0.008919 +v 0.035936 0.030688 0.034017 +v -0.038573 0.006166 0.018725 +v 0.009445 -0.035781 -0.051728 +v 0.034099 -0.009847 -0.049688 +v 0.042992 0.021392 0.051220 +v 0.032605 -0.026657 0.045178 +v 0.016675 -0.039125 0.036412 +v -0.010948 -0.051293 0.060356 +v 0.003775 -0.048186 0.064341 +v -0.009859 -0.039992 0.012244 +v 0.027728 0.038058 0.037719 +v 0.031234 -0.026736 0.029125 +v 0.008477 0.074725 0.036786 +v -0.009519 -0.031542 -0.029388 +v -0.037269 0.011889 -0.034140 +v -0.030447 -0.041655 0.031102 +v -0.016307 0.033829 0.028124 +v 0.037624 0.000419 0.009628 +v -0.033752 0.025789 0.060879 +v -0.030041 0.002261 -0.058021 +v 0.004345 0.057212 -0.035932 +v 0.022098 0.005983 -0.056926 +v 0.033154 0.018272 0.026760 +v 0.000326 -0.033922 -0.026005 +v 0.031236 0.020613 -0.035680 +v 0.024683 0.069489 0.038652 +v 0.028881 -0.014733 -0.024367 +v 0.032066 0.010861 -0.009745 +v -0.032192 -0.033128 0.060738 +v 0.039991 -0.008055 0.043812 +v 0.017970 0.013957 -0.057030 +v -0.033493 0.022575 -0.026111 +v -0.046572 0.014255 0.067089 +v 0.025080 -0.036860 -0.019897 +v 0.023721 0.039244 0.018286 +v -0.037351 -0.017998 0.031474 +v 0.039666 0.025240 0.024720 +v -0.022232 0.041863 0.057693 +v 0.037192 0.011173 0.034189 +v -0.049311 -0.001572 0.026656 +v 0.032371 0.006405 -0.015046 +v 0.002081 0.036826 0.026802 +v -0.030833 -0.042118 0.061817 +v 0.005340 -0.003160 -0.042397 +v -0.029686 0.020970 -0.042210 +v 0.008282 0.042560 -0.035437 +v -0.039635 -0.006999 -0.034629 +v 0.021917 0.027426 0.003227 +v -0.008741 -0.039412 -0.040791 +v 0.016076 0.035447 0.053119 +v 0.036219 -0.013932 0.011265 +v -0.037533 -0.035393 0.039043 +v -0.019897 0.041796 0.021119 +v 0.011652 -0.029224 -0.033205 +v 0.048224 -0.012579 0.048505 +v -0.021349 -0.006701 -0.040273 +v 0.028295 0.017842 -0.009289 +v 0.033730 -0.000383 -0.052985 +v 0.016349 -0.045935 0.002392 +v -0.023550 0.021146 -0.056704 +v 0.033635 -0.006618 -0.013637 +v -0.033098 -0.034419 -0.003716 +v -0.032654 0.021585 0.037925 +v -0.033328 -0.003968 -0.056842 +v -0.046097 0.008421 0.006251 +v 0.015078 0.033075 -0.037320 +v -0.041711 0.004338 -0.024003 +v -0.015298 0.034803 0.036760 +v 0.040359 0.025498 0.038901 +v -0.047377 -0.004425 0.006292 +v -0.011558 0.031445 -0.006267 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_5.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_5.obj new file mode 100644 index 0000000000000000000000000000000000000000..3fe398915fa85d1509ce59d6637d78db03cebd03 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_5.obj @@ -0,0 +1,1028 @@ +o kp.000 +v -0.002415 -0.003114 0.092542 +v -0.002415 -0.002114 0.092542 +v -0.002415 -0.002114 0.091542 +v -0.002415 -0.003114 0.091542 +v -0.001415 -0.002114 0.091542 +v -0.001415 -0.003114 0.091542 +v -0.001415 -0.002114 0.092542 +v -0.001415 -0.003114 0.092542 +o kp.001 +v -0.003188 -0.000642 -0.048897 +v -0.003188 0.000358 -0.048897 +v -0.003188 0.000358 -0.049897 +v -0.003188 -0.000642 -0.049897 +v -0.002188 0.000358 -0.049897 +v -0.002188 -0.000642 -0.049897 +v -0.002188 0.000358 -0.048897 +v -0.002188 -0.000642 -0.048897 +o kp.002 +v 0.059930 -0.011292 0.072868 +v 0.059930 -0.010292 0.072868 +v 0.059930 -0.010292 0.071868 +v 0.059930 -0.011292 0.071868 +v 0.060930 -0.010292 0.071868 +v 0.060930 -0.011292 0.071868 +v 0.060930 -0.010292 0.072868 +v 0.060930 -0.011292 0.072868 +o mesh +v 0.005686 -0.041922 0.064282 +v -0.007888 0.038882 -0.050263 +v 0.069703 -0.008785 -0.006432 +v -0.007843 0.042039 0.090825 +v -0.012063 -0.039463 -0.018820 +v -0.035768 0.023979 0.020704 +v 0.066598 -0.006521 0.064193 +v 0.027534 0.030231 0.027304 +v -0.042694 -0.010479 0.090699 +v 0.029638 -0.011596 -0.050717 +v -0.041806 -0.004015 -0.048230 +v 0.024791 -0.022204 0.018992 +v -0.033421 -0.027207 0.031803 +v 0.034996 0.019042 0.090461 +v 0.029378 0.026915 -0.019957 +v 0.034095 -0.023788 0.090575 +v -0.037910 0.021552 0.062919 +v -0.041771 -0.009210 -0.006244 +v -0.006029 0.041202 -0.003177 +v -0.004211 0.042128 0.050464 +v -0.034234 0.024262 -0.023462 +v -0.005447 -0.000023 -0.038516 +v -0.002549 0.006423 0.024260 +v 0.074509 -0.019038 0.029484 +v 0.024548 -0.031507 -0.017301 +v 0.032000 -0.005574 0.051960 +v -0.019436 -0.038871 0.090498 +v 0.004007 -0.037467 -0.050974 +v -0.005287 -0.041349 0.017070 +v 0.039656 0.003520 0.002808 +v 0.025753 0.032555 0.061837 +v -0.032559 -0.025035 0.063921 +v 0.022054 0.024916 -0.050906 +v -0.026109 -0.032131 -0.046216 +v -0.043487 0.000476 0.039204 +v -0.033096 0.027401 0.091085 +v 0.038972 -0.001111 -0.025547 +v -0.028216 -0.031636 0.002903 +v 0.022913 -0.030859 0.045250 +v -0.032070 0.021796 -0.050829 +v 0.002762 0.041646 0.022726 +v 0.011672 -0.039342 0.090589 +v -0.014062 -0.040225 0.045944 +v 0.006133 0.040206 -0.027146 +v 0.023812 0.003837 0.024371 +v 0.041482 -0.002092 0.076806 +v 0.018135 0.038080 0.087540 +v -0.009500 -0.017779 0.027244 +v 0.018499 0.036399 0.003794 +v -0.020430 0.037876 0.069825 +v -0.043756 -0.002930 0.065541 +v -0.034156 -0.024517 -0.024274 +v -0.024698 0.031377 0.042996 +v 0.014234 -0.038184 0.003142 +v 0.036936 0.017594 0.045083 +v -0.042173 -0.009349 0.017376 +v -0.028998 0.031018 -0.001488 +v 0.031135 -0.027609 0.067679 +v 0.018685 0.005337 -0.038578 +v 0.008721 -0.017612 -0.038605 +v 0.049767 -0.016960 -0.013121 +v -0.016730 0.038086 -0.025880 +v 0.003245 0.021663 -0.038646 +v -0.041402 0.011376 0.001451 +v 0.037252 0.009297 -0.049518 +v -0.017648 0.038497 0.015801 +v -0.042279 0.004086 -0.024115 +v 0.007429 -0.039485 -0.029671 +v -0.022115 -0.000757 0.031628 +v 0.003596 0.039747 0.070466 +v 0.038677 -0.012607 0.032340 +v -0.015158 -0.040285 0.069469 +v -0.023417 -0.011852 -0.040131 +v 0.014227 -0.038831 0.027482 +v 0.015986 0.038306 0.043081 +v -0.042952 0.009338 0.083514 +v 0.024093 -0.030845 -0.044395 +v 0.064331 -0.019646 0.048145 +v 0.037987 0.016124 0.065700 +v 0.034754 -0.019850 0.000662 +v 0.072153 -0.020807 0.009514 +v -0.016313 0.017325 -0.038632 +v 0.008334 -0.010133 0.021295 +v 0.033481 0.022334 0.005771 +v 0.033658 -0.019683 -0.030998 +v -0.034333 -0.027417 0.084235 +v -0.008340 0.026330 0.028575 +v 0.050575 -0.017219 0.067995 +v 0.005453 -0.041596 0.045000 +v -0.040409 -0.016237 0.047773 +v -0.010404 -0.038960 -0.037982 +v -0.036024 0.017557 0.038220 +v -0.007538 -0.040688 -0.001128 +v 0.010704 0.038788 -0.047273 +v 0.011850 0.020923 0.027236 +v 0.070282 -0.005249 0.039673 +v 0.035260 0.016613 -0.033010 +v 0.038402 0.012349 0.019541 +v -0.021592 -0.036552 0.021507 +v -0.042762 0.007298 0.023223 +v -0.002209 -0.042783 0.080857 +v 0.036699 0.015027 -0.009854 +v -0.039883 0.010830 -0.039778 +v 0.004044 -0.027124 0.020082 +v 0.021161 0.033371 -0.034771 +v -0.023393 0.034253 -0.042973 +v 0.018877 -0.037614 0.075191 +v 0.038632 -0.010757 0.014571 +v -0.007677 -0.021658 -0.038728 +v 0.076111 -0.006649 0.017798 +v -0.026875 -0.029963 0.048858 +v 0.007162 -0.040045 -0.011828 +v 0.029823 0.029038 0.078259 +v 0.036506 0.004295 0.035214 +v 0.035005 -0.021836 0.052253 +v 0.014903 0.037879 -0.012277 +v -0.036073 -0.019383 -0.049936 +v -0.023888 -0.020364 0.019408 +v -0.020882 0.016218 0.031904 +v 0.045660 -0.002379 0.060067 +v -0.011280 0.040939 0.034743 +v -0.039907 -0.012792 -0.033554 +v -0.042281 0.010880 0.051907 +v -0.005084 -0.038170 0.032465 +v 0.055976 -0.002582 -0.011888 +v -0.018238 -0.027868 0.035932 +v -0.021056 0.035514 0.085247 +v 0.039500 -0.009148 0.090797 +v -0.023192 -0.034350 -0.030430 +v -0.038800 -0.015274 0.075647 +v -0.036779 -0.012077 0.031906 +v -0.026488 0.003130 -0.039438 +v -0.033246 0.028141 0.075827 +v -0.036659 -0.022365 0.011438 +v 0.028143 0.030023 0.046675 +v 0.035642 -0.016842 0.077277 +v -0.034590 -0.024581 -0.008703 +v 0.034050 -0.020203 -0.014999 +v -0.028907 0.032204 0.057653 +v 0.028352 -0.029559 0.031451 +v 0.012354 0.039967 0.058464 +v -0.023334 0.031685 0.028248 +v -0.019288 0.037254 -0.011408 +v -0.011151 -0.031862 -0.050777 +v 0.019744 -0.036735 0.058268 +v 0.041270 0.005869 0.089470 +v 0.036848 -0.002337 -0.039940 +v 0.018007 0.036895 0.018646 +v 0.040587 -0.006810 -0.007242 +v -0.025538 -0.033211 -0.015879 +v -0.037465 0.020322 -0.008976 +v 0.020369 -0.009354 -0.039048 +v -0.005320 0.041008 -0.017393 +v 0.054512 -0.004082 0.071448 +v 0.002901 0.037757 0.037867 +v 0.027683 0.029249 -0.006190 +v -0.026968 -0.034104 0.073778 +v 0.032538 0.017939 0.031816 +v 0.024347 -0.034385 0.087625 +v 0.004403 0.041164 0.006019 +v 0.018590 0.037551 0.073833 +v 0.026907 -0.030068 0.005346 +v -0.034148 0.023721 -0.037476 +v -0.006203 -0.042038 0.056937 +v -0.016637 0.036487 0.052696 +v -0.008780 0.041681 0.063969 +v 0.004076 0.042346 0.084401 +v -0.006054 0.040115 -0.036918 +v 0.040561 0.005191 0.050155 +v 0.026643 -0.009304 0.023589 +v 0.019630 -0.035838 0.015181 +v -0.042256 0.006162 -0.010790 +v -0.043642 -0.002774 0.052232 +v 0.060213 -0.017798 -0.004032 +v 0.068752 -0.007017 0.006724 +v -0.007678 0.039834 0.077371 +v 0.063627 -0.019150 0.061857 +v -0.043877 -0.003347 0.079719 +v -0.040153 -0.013741 -0.018475 +v 0.040272 -0.001059 0.023282 +v -0.023078 -0.036446 0.059754 +v -0.043057 0.001684 0.010098 +v 0.039404 0.012886 0.078611 +v 0.036452 -0.013210 0.061945 +v -0.033793 0.021626 0.050563 +v -0.036169 0.022952 0.005756 +v 0.007313 -0.040603 0.014165 +v -0.023278 -0.014039 0.030671 +v 0.023775 -0.031291 -0.031507 +v -0.015463 -0.039019 0.009549 +v -0.008056 0.028460 -0.041806 +v -0.042835 0.009554 0.070745 +v -0.033329 -0.024664 -0.038637 +v 0.013194 0.034955 0.030874 +v 0.007563 -0.000834 -0.038554 +v 0.027304 0.029940 0.090883 +v -0.034588 0.007048 -0.050664 +v -0.038940 -0.013497 0.060469 +v 0.010912 -0.028584 -0.044473 +v 0.061885 -0.007756 0.051593 +v 0.031501 -0.021069 0.040094 +v 0.011736 0.006771 0.023154 +v 0.037702 0.011339 -0.021966 +v 0.026628 0.013177 -0.044145 +v 0.029969 0.025179 -0.041378 +v 0.068248 -0.008442 0.027201 +v -0.031884 0.005948 0.037102 +v 0.027695 0.029753 0.013703 +v -0.026659 0.031997 -0.031418 +v 0.015277 0.020367 -0.040136 +v -0.030513 -0.008346 -0.049707 +v -0.017235 0.038424 0.000541 +v -0.006481 0.041391 0.011236 +v -0.017532 -0.037855 -0.007198 +v -0.004958 0.011898 -0.038469 +v 0.032533 -0.020667 -0.042732 +v -0.030158 0.029589 -0.013737 +v -0.039814 0.014700 -0.019464 +v 0.031329 0.022517 0.058397 +v -0.041795 -0.000941 -0.036883 +v 0.015216 -0.038635 0.039193 +v 0.023011 -0.032965 -0.005342 +v -0.029722 0.030677 0.013208 +v -0.001952 -0.030619 -0.043603 +v 0.032687 -0.005960 0.040304 +v 0.020802 0.034331 -0.022774 +v 0.064306 -0.015860 0.037121 +v -0.032892 0.027968 0.034068 +v 0.041785 -0.011371 -0.019454 +v -0.019601 -0.022694 -0.041783 +v -0.008042 -0.041059 0.090761 +v -0.041304 -0.011772 0.005038 +v -0.040059 0.018004 0.090580 +v 0.006500 0.010736 -0.040484 +v -0.028037 0.014196 -0.042337 +v 0.002793 0.030277 0.029087 +v 0.039229 0.004233 -0.013006 +v -0.005025 -0.004785 0.023614 +v -0.040332 0.015146 0.013012 +v -0.014918 0.007319 0.027919 +v 0.035185 -0.020092 0.023241 +v 0.004173 0.040951 -0.008283 +v 0.038605 0.003370 0.066929 +v -0.009710 -0.029251 0.027084 +v 0.029768 -0.026190 0.079678 +v -0.015525 0.030073 -0.050121 +v -0.000345 0.017267 0.026477 +v 0.067933 -0.016891 0.019731 +v 0.024141 -0.021439 -0.050812 +v -0.002521 -0.010901 -0.038473 +v 0.033614 0.022522 0.020217 +v -0.016237 -0.039237 0.033603 +v -0.043774 0.000707 0.091033 +v 0.033505 -0.022479 0.011925 +v -0.033174 -0.022687 0.042183 +v 0.002852 -0.037347 0.024425 +v 0.061268 -0.012026 -0.014401 +v -0.008501 0.041262 0.022155 +v 0.035871 -0.001748 -0.050973 +v -0.003799 -0.040175 0.069757 +v -0.002777 -0.040699 -0.024730 +v 0.008141 -0.041652 0.077114 +v 0.002219 0.031909 -0.045580 +v -0.014160 -0.040828 0.080452 +v -0.029953 -0.030401 0.014950 +v 0.072592 -0.011801 0.048250 +v 0.038546 -0.013951 0.045401 +v 0.038868 -0.008639 0.003488 +v 0.061594 -0.012963 0.071585 +v -0.035455 0.014309 0.027481 +v -0.039402 0.019294 0.079698 +v -0.043226 -0.003585 0.026589 +v 0.026227 -0.028421 0.055439 +v 0.070847 -0.018390 -0.001441 +v 0.004626 -0.039617 -0.040176 +v 0.019597 0.033346 0.052499 +v 0.014263 -0.037624 -0.019566 +v -0.038698 0.016537 -0.030021 +v 0.022908 0.018992 0.027133 +v 0.003868 -0.040835 0.002324 +v 0.006783 0.038360 0.048572 +v -0.033327 -0.004423 0.039190 +v 0.013262 -0.021859 0.018941 +v -0.042917 0.000663 -0.001669 +v -0.014964 -0.008075 0.027715 +v 0.046811 -0.002032 -0.017275 +v 0.031898 0.019993 -0.050460 +v 0.016231 -0.035792 -0.037442 +v 0.057348 -0.010631 0.061068 +v 0.018281 -0.021096 -0.042002 +v -0.027496 -0.033057 0.038338 +v 0.022253 0.030710 0.037938 +v -0.037547 -0.019720 0.090702 +v -0.015842 0.001687 -0.038439 +v -0.036095 -0.023443 0.021889 +v 0.013360 -0.036595 0.049985 +v 0.013059 0.028718 -0.046018 +v 0.038102 0.006099 -0.034060 +v -0.026123 -0.022180 -0.050370 +v -0.033398 -0.023294 0.053305 +v 0.005846 0.039679 -0.038200 +v 0.030719 0.024056 0.069268 +v -0.027209 -0.032111 0.090789 +v 0.036444 -0.012500 -0.037794 +v 0.028946 0.003128 -0.043562 +v 0.020632 -0.030736 0.024807 +v 0.077770 -0.012292 0.008729 +v -0.042427 -0.009764 0.040049 +v -0.004889 -0.040825 -0.010952 +v 0.060202 -0.007377 -0.003125 +v 0.004223 -0.000812 0.022038 +v 0.042212 -0.011837 0.071402 +v 0.016012 -0.035710 -0.049540 +v -0.013448 -0.011627 -0.038584 +v 0.074848 -0.014518 0.038483 +v 0.037738 0.013258 0.004290 +v 0.038540 0.014410 0.055831 +v -0.042469 -0.003951 -0.014732 +v 0.077922 -0.016572 0.020153 +v 0.001933 -0.041780 0.090798 +v -0.042360 0.009922 0.036165 +v 0.005827 -0.041317 0.035025 +v 0.030398 -0.025731 -0.006122 +v -0.037723 -0.020220 -0.000296 +v 0.002431 0.039377 0.057786 +v 0.027190 0.030017 0.003760 +v 0.031214 0.026493 0.037843 +v -0.005296 -0.040076 -0.048820 +v -0.040895 0.005148 0.059843 +v -0.011214 -0.040438 0.025084 +v 0.017990 -0.013499 0.021075 +v -0.021990 0.024716 -0.044941 +v -0.000585 -0.018068 0.023120 +v -0.033045 -0.025066 0.073727 +v -0.041821 -0.006778 -0.026045 +v -0.030145 0.027765 0.066247 +v 0.041336 -0.009855 0.054235 +v 0.008681 0.040475 0.015130 +v -0.039047 0.015433 -0.048645 +v 0.028683 0.026977 -0.031949 +v -0.025108 0.033526 -0.020988 +v -0.013162 0.037398 0.043732 +v -0.024539 0.023671 0.036808 +v -0.004906 -0.042201 0.041214 +v 0.039837 0.003473 0.012431 +v 0.031026 -0.024423 -0.023081 +v 0.022698 -0.032132 0.067279 +v -0.021405 0.037026 0.036022 +v -0.013258 0.034200 0.026438 +v 0.021561 0.033376 -0.046658 +v 0.052428 -0.009757 -0.018672 +v -0.017707 0.037012 -0.035950 +v -0.018628 -0.036457 -0.041785 +v -0.024066 0.034966 0.005984 +v -0.028989 -0.031517 0.024343 +v -0.012481 -0.039006 -0.028172 +v -0.038131 0.003031 0.047374 +v 0.037342 -0.011189 -0.028570 +v -0.039478 -0.014160 -0.042968 +v -0.021575 -0.035372 0.082048 +v -0.025907 -0.021703 0.035294 +v 0.032359 -0.004788 0.061238 +v 0.035341 0.016629 -0.042485 +v 0.031068 0.010237 0.024816 +v 0.051041 -0.009774 -0.007489 +v 0.014138 -0.037757 -0.006049 +v 0.018376 0.027314 0.028322 +v 0.020956 -0.026860 0.012076 +v -0.019330 -0.034667 0.051117 +v 0.032467 -0.006036 0.030853 +v 0.070042 -0.013152 0.056940 +v 0.040651 -0.001566 0.041349 +v 0.011579 0.039316 -0.003157 +v 0.010719 -0.032266 0.016529 +v -0.027354 0.029972 -0.050139 +v 0.047549 -0.011182 0.061395 +v 0.000958 0.040399 -0.048916 +v -0.012355 0.018225 0.029240 +v -0.003720 0.037014 0.031687 +v 0.004363 0.040726 -0.017323 +v 0.038146 -0.017091 0.086059 +v 0.065134 -0.015192 0.005617 +v 0.013311 -0.037245 0.065006 +v 0.037467 -0.009724 -0.046752 +v 0.005718 -0.041693 0.055332 +v -0.033307 -0.001408 -0.044788 +v 0.036413 -0.015569 -0.007720 +v 0.010354 0.040872 0.090921 +v -0.024992 0.034593 0.019685 +v 0.034691 0.019169 -0.018920 +v -0.023950 -0.034970 0.010183 +v -0.019121 0.035690 0.061302 +v 0.034794 -0.022363 0.061500 +v -0.026738 0.034115 0.074869 +v -0.013658 -0.037935 0.059434 +v -0.003315 -0.032525 0.020262 +v 0.027654 -0.005732 -0.042537 +v 0.014385 0.037497 -0.030865 +v 0.012312 0.040338 0.079393 +v 0.076135 -0.009420 0.031382 +v -0.029188 0.013704 0.033882 +v 0.015681 -0.036711 -0.028316 +v -0.002619 0.040917 -0.027833 +v 0.035437 -0.008407 0.022877 +v 0.025259 -0.015703 -0.044228 +v 0.039336 0.009472 0.027808 +v -0.037889 0.016826 0.070414 +v -0.041778 0.004436 -0.045859 +v -0.026215 -0.033033 -0.005521 +v 0.045496 -0.001646 0.068968 +v -0.031556 0.024293 0.042523 +v -0.001919 -0.040181 -0.033431 +v 0.032388 -0.018673 0.031753 +v 0.033146 0.021166 0.079899 +v 0.038720 0.012664 0.036051 +v -0.003477 -0.041232 0.006959 +v 0.023378 0.032741 -0.014624 +v -0.039289 -0.019245 0.066963 +v 0.026782 -0.030618 0.018430 +v 0.019941 -0.032216 0.033312 +v 0.014752 -0.004404 0.022230 +v 0.021076 0.034741 -0.004293 +v 0.026787 0.031835 0.070686 +v 0.017656 -0.027348 -0.050817 +v 0.031890 0.024124 -0.012202 +v -0.018798 -0.027976 -0.050068 +v -0.014833 0.038538 -0.045201 +v 0.030776 -0.027444 0.045947 +v 0.012517 0.040079 0.068305 +v 0.014686 -0.039711 0.082383 +v 0.038378 0.001834 0.058424 +v 0.033602 0.023604 0.050197 +v -0.002155 -0.042245 0.049398 +v 0.029429 -0.025275 -0.035901 +v -0.021061 -0.037276 0.042035 +v 0.074927 -0.010690 0.000841 +v -0.015965 0.039450 0.091057 +v -0.005591 0.020917 -0.038695 +v -0.030851 0.029771 0.024497 +v -0.030698 0.030406 0.049554 +v 0.003029 -0.024988 -0.039714 +v -0.016663 0.025733 0.029993 +v 0.032558 0.002332 0.022224 +v 0.012689 0.038513 -0.022091 +v -0.026818 0.033648 0.091129 +v 0.016073 0.036546 -0.041087 +v -0.042528 -0.010918 0.069466 +v -0.021712 0.010034 -0.038629 +v -0.015237 0.040267 0.081443 +v -0.041397 0.014023 0.061640 +v 0.040275 -0.003823 0.032928 +v 0.059830 -0.015755 0.054951 +v -0.038712 0.010536 0.043765 +v 0.036335 0.017275 0.011700 +v -0.043218 -0.001043 0.018700 +v 0.053281 -0.012217 0.074016 +v -0.041422 -0.014983 0.083873 +v 0.066421 -0.016473 0.027986 +v -0.011921 -0.028594 -0.043233 +v 0.021148 0.033583 0.080604 +v 0.037127 -0.018565 0.069347 +v 0.038707 0.008842 -0.004798 +v 0.034508 0.020239 -0.003895 +v 0.005803 -0.008844 -0.038540 +v -0.043943 0.001822 0.073356 +v 0.063742 -0.008855 0.043019 +v -0.031247 -0.030266 0.057770 +v -0.038490 -0.017381 -0.025609 +v -0.041571 0.006245 -0.031971 +v 0.040242 -0.010830 0.081246 +v 0.040131 -0.006253 0.064669 +v 0.007104 0.014294 0.024934 +v -0.038640 -0.011460 -0.050614 +v -0.023228 -0.035895 0.031133 +v -0.034235 -0.019635 0.034647 +v -0.003522 0.039040 0.042637 +v -0.040243 -0.015569 0.022185 +v -0.011823 0.040019 -0.009979 +v -0.018189 -0.019772 0.033895 +v 0.026740 0.027846 0.054435 +v 0.023959 -0.031783 0.079870 +v 0.007921 0.040935 0.032081 +v -0.028333 -0.016855 -0.044769 +v -0.017001 -0.038271 0.001697 +v -0.039120 -0.016958 -0.007504 +v 0.039551 -0.002303 0.086625 +v 0.021964 0.034833 0.031077 +v -0.029062 -0.009168 0.034362 +v -0.024388 0.035471 0.051128 +v 0.038792 0.005342 0.075784 +v -0.013241 0.040759 0.071654 +v 0.040796 -0.002718 0.049206 +v 0.031784 -0.019224 -0.050679 +v -0.039979 -0.007759 0.047285 +v -0.029221 -0.029555 -0.032107 +v 0.019399 0.036874 0.063604 +v -0.035067 0.026074 0.083575 +v -0.024999 -0.032358 0.066203 +v 0.052459 -0.004928 0.063426 +v -0.036499 0.023011 0.029140 +v 0.012566 0.039183 0.008128 +v -0.034384 0.026590 0.057931 +v 0.068619 -0.010035 0.015974 +v 0.067095 -0.016215 -0.007974 +v 0.039402 0.013321 0.087410 +v -0.013313 -0.038496 -0.047174 +v 0.019372 -0.035190 -0.011912 +v 0.015030 0.012244 -0.038577 +v 0.038295 0.004744 -0.042890 +v 0.008290 0.036551 0.024820 +v -0.024145 -0.021272 0.027753 +v -0.028301 0.032920 0.082358 +v 0.021821 0.034584 0.012337 +v -0.042300 0.010477 0.091120 +v 0.058199 -0.018624 0.067585 +v 0.043552 -0.013201 -0.010373 +v -0.037010 -0.020536 -0.016666 +v -0.012811 -0.039934 0.017378 +v 0.036910 -0.015186 0.008563 +v -0.015211 -0.000437 0.027224 +v -0.011226 0.040423 0.004801 +v -0.013925 0.039237 -0.018886 +v 0.000416 -0.036445 0.014896 +v 0.035218 0.016824 0.073608 +v -0.020411 -0.038198 0.075070 +v 0.068918 -0.005117 0.050377 +v 0.007060 -0.039897 -0.020454 +v 0.070684 -0.020458 0.036239 +v -0.039754 0.016701 0.021704 +v 0.005993 -0.042270 0.084414 +v -0.037226 0.017933 -0.041729 +v 0.000549 0.041719 0.091067 +v 0.001687 0.041354 -0.001032 +v -0.033600 0.026120 -0.004944 +v -0.025975 -0.031924 -0.038665 +v 0.030188 -0.029126 0.086980 +v 0.039440 0.000343 -0.005193 +v 0.071086 -0.018514 0.043635 +v -0.000738 0.042553 0.078373 +v 0.021579 0.020921 -0.044190 +v -0.003364 -0.033038 -0.050565 +v -0.031193 -0.028308 -0.016386 +v -0.032646 -0.025767 -0.047993 +v -0.035756 0.022685 -0.016290 +v 0.063888 -0.004612 -0.009041 +v -0.029697 -0.032042 0.080451 +v -0.029968 -0.008625 -0.042239 +v -0.039444 0.018016 0.044864 +v -0.020459 -0.036147 -0.023710 +v -0.003136 -0.041708 0.025413 +v -0.029162 -0.030038 -0.024566 +v -0.000480 0.042353 0.064804 +v 0.037584 0.008696 0.061840 +v -0.028242 0.030290 -0.038976 +v 0.039864 -0.008751 0.039682 +v 0.040233 0.006806 0.041113 +v 0.010808 -0.038303 -0.044941 +v -0.037121 -0.015588 0.041169 +v -0.015322 -0.034337 0.025889 +v 0.031603 0.004682 -0.050702 +v -0.039903 0.012383 0.076901 +v 0.017616 0.010725 0.025192 +v -0.008843 -0.038653 0.050887 +v 0.027805 0.024280 0.031621 +v -0.018818 -0.005040 -0.038519 +v 0.038127 -0.004841 -0.032196 +v 0.060332 -0.003596 0.066681 +v -0.035703 -0.021752 0.079768 +v 0.032844 0.021792 -0.028402 +v -0.037140 0.017497 0.056773 +v 0.028358 -0.024034 0.026619 +v -0.036397 0.024042 0.069644 +v 0.015860 -0.001424 -0.038529 +v -0.025248 0.030830 0.035376 +v 0.034770 -0.014373 0.039148 +v -0.014506 -0.034814 0.039916 +v 0.031729 -0.025243 0.018682 +v -0.034190 -0.025531 0.005334 +v -0.042790 -0.004732 0.003814 +v 0.029661 0.012253 -0.050718 +v 0.011797 0.004654 -0.040865 +v -0.036400 0.022915 0.013528 +v -0.002536 -0.040114 -0.041301 +v -0.040843 0.011033 -0.025793 +v -0.021874 0.036060 -0.004514 +v 0.043726 -0.016590 0.064334 +v 0.065849 -0.009096 0.035032 +v -0.016481 -0.037345 -0.034395 +v -0.040434 0.013754 -0.008312 +v -0.039393 -0.011211 0.053615 +v 0.010660 -0.039951 0.021292 +v 0.001642 0.003273 -0.039116 +v 0.000689 -0.040867 -0.006357 +v 0.035382 -0.003007 0.018077 +v 0.028500 -0.030593 0.074093 +v -0.000585 -0.010440 0.022923 +v -0.000651 0.027438 -0.040690 +v 0.011454 0.036599 0.037735 +v 0.048309 -0.003649 -0.010410 +v -0.015065 0.026989 -0.042610 +v -0.038098 -0.021348 0.060184 +v -0.002630 -0.024964 0.023362 +v 0.013586 0.039430 0.050651 +v 0.032519 0.026002 0.087883 +v 0.020643 -0.032883 0.052271 +v 0.032674 0.018573 0.038964 +v 0.035770 -0.016428 -0.023932 +v 0.077558 -0.009428 0.024246 +v -0.003250 0.036970 0.024537 +v 0.018555 -0.037368 0.090730 +v 0.028686 0.026672 -0.048856 +v -0.011388 0.041060 0.054350 +v -0.040766 -0.005735 0.058076 +v 0.006459 0.041616 0.063275 +v -0.042724 -0.006137 0.011027 +v 0.008061 -0.031621 -0.050555 +v 0.010145 -0.041006 0.070309 +v 0.067043 -0.014009 0.065377 +v -0.007846 -0.011194 0.025158 +v -0.009483 0.040006 -0.030699 +v -0.032088 0.007430 -0.044032 +v -0.042747 0.005938 0.015760 +v -0.026779 -0.026505 0.040945 +v -0.019101 -0.037011 -0.014056 +v 0.004674 0.023553 0.027888 +v -0.002387 0.034464 -0.050849 +v 0.021451 -0.034307 0.003808 +v 0.007890 0.026404 -0.041103 +v -0.004980 0.039920 0.069692 +v 0.008381 0.033169 -0.050891 +v 0.056650 -0.017876 -0.011808 +v 0.069763 -0.005216 -0.000342 +v 0.039133 0.004868 0.082816 +v -0.041221 -0.007358 -0.039755 +v 0.036301 0.010741 0.049291 +v -0.031285 0.014878 -0.049789 +v -0.043252 -0.004597 0.034330 +v 0.015919 0.034079 -0.050807 +v -0.021100 0.034358 -0.050166 +v 0.032489 -0.022008 0.073355 +v -0.013560 -0.025220 0.031363 +v 0.011542 -0.037597 0.058223 +v -0.024798 0.008283 0.033112 +v 0.010371 -0.036145 0.033703 +v -0.032683 -0.027120 -0.002454 +v 0.065257 -0.004477 0.056781 +v 0.024648 0.031301 -0.027780 +v 0.066737 -0.018977 0.054907 +v -0.040279 -0.015166 0.014003 +v -0.032770 0.025998 -0.030066 +v 0.035932 0.018901 0.025797 +v 0.048130 -0.007582 0.073235 +v 0.007958 -0.017768 0.020844 +v 0.029038 -0.025990 -0.045545 +v -0.002732 0.041580 0.005376 +v 0.021951 0.035129 0.046201 +v -0.030487 0.020899 0.034516 +v -0.042845 -0.009676 0.076431 +v -0.020509 0.037353 0.024222 +v 0.001873 0.041594 0.014350 +v -0.043330 0.002459 0.030001 +v 0.022760 0.034184 0.024185 +v -0.008922 0.040380 -0.023549 +v 0.015208 -0.033656 0.021608 +v 0.035848 -0.013467 0.052071 +v 0.073955 -0.020670 0.016241 +v 0.022375 -0.002865 0.023535 +v -0.015497 -0.015086 0.029599 +v 0.025372 -0.015797 0.021632 +v -0.002769 0.040587 0.085127 +v 0.007622 -0.040802 0.028398 +v 0.007099 -0.040091 -0.003968 +v 0.019284 -0.036665 0.044611 +v 0.037258 -0.013534 -0.001055 +v 0.006066 0.041880 0.076509 +v -0.034656 -0.026117 0.090960 +v -0.043974 0.002320 0.084375 +v -0.009440 0.031870 -0.047576 +v 0.026833 -0.023496 0.010857 +v -0.014331 0.008347 -0.038428 +v 0.029024 -0.027329 -0.012617 +v 0.027160 -0.026671 0.040208 +v -0.007714 -0.042175 0.074962 +v 0.064063 -0.009301 0.002138 +v -0.035539 0.011508 0.035147 +v 0.025828 0.030075 0.084076 +v -0.036139 -0.000227 -0.050857 +v 0.039504 -0.001148 -0.018768 +v -0.038994 0.017732 0.001349 +v -0.008954 -0.005839 -0.038541 +v -0.017189 0.038565 0.007446 +v -0.006440 -0.039682 0.063292 +v -0.020904 -0.034897 -0.049569 +v -0.042670 0.005091 0.003659 +v -0.010047 -0.034944 0.021287 +v 0.001710 -0.040771 -0.016402 +v -0.041909 -0.004238 0.086124 +v -0.034503 0.023678 -0.044226 +v 0.000560 -0.042584 0.074317 +v -0.007297 0.040315 -0.043547 +v 0.013598 -0.038741 0.012605 +v -0.037038 -0.022228 0.028445 +v 0.075221 -0.016756 0.004381 +v -0.028501 -0.001343 0.035648 +v 0.037225 -0.007280 0.045698 +v 0.074767 -0.006242 0.009644 +v 0.039941 0.010387 0.068619 +v 0.034173 -0.013483 0.027421 +v -0.011176 -0.040883 0.039182 +v -0.041437 0.012802 0.030123 +v 0.000254 -0.038565 0.038944 +v -0.000825 -0.019637 -0.038548 +v -0.006121 0.039346 0.058291 +v 0.040402 0.002852 0.029973 +v 0.023551 -0.033890 0.039329 +v 0.015067 -0.015555 -0.038805 +v 0.037431 0.011333 -0.029557 +v 0.036835 -0.016151 0.018117 +v -0.037408 0.003900 0.040202 +v -0.016701 0.039183 0.031307 +v -0.011964 -0.039612 -0.012172 +v -0.025268 0.035001 0.063685 +v -0.024944 0.033877 -0.012104 +v 0.037818 0.011392 -0.015273 +v -0.032295 0.027888 0.003320 +v -0.007610 0.001163 0.024909 +v 0.067582 -0.016333 0.013153 +v -0.042487 0.003270 -0.017561 +v 0.071155 -0.021025 0.023746 +v 0.000457 -0.041811 0.031227 +v -0.025377 -0.004795 -0.039137 +v 0.005561 0.041540 0.042929 +v 0.029921 -0.003596 0.023375 +v 0.000349 0.040410 -0.034655 +v 0.019749 -0.034744 -0.021785 +v -0.035965 -0.021089 -0.033783 +v 0.031179 0.025469 -0.001718 +v 0.039999 0.004490 0.018916 +v 0.037288 0.010385 -0.039687 +v -0.022091 0.019445 -0.041035 +v -0.043477 0.004535 0.053038 +v -0.019900 0.038242 0.076348 +v -0.001306 0.042127 0.035391 +v 0.000690 -0.042352 0.060071 +v -0.001137 0.041949 0.028248 +v -0.015471 0.039963 0.065566 +v -0.031034 -0.030499 0.067874 +v 0.017723 -0.029581 0.017055 +v 0.039802 -0.002651 0.005920 +v 0.038862 0.005004 -0.023270 +v 0.022723 0.034851 0.090868 +v 0.033209 0.022960 0.012327 +v 0.033682 -0.017919 0.047139 +v 0.009480 0.017861 -0.038548 +v 0.038619 -0.015680 -0.013965 +v -0.000766 0.041259 -0.012513 +v -0.036856 -0.017825 0.054009 +v 0.025674 0.030039 -0.042878 +v 0.025010 -0.031918 0.011541 +v -0.019521 -0.035760 0.065450 +v 0.011531 0.029081 0.028671 +v 0.033490 -0.021209 0.084194 +v 0.027298 0.030322 0.020823 +v 0.029860 -0.028894 0.061454 +v 0.021899 0.010807 -0.039904 +v 0.005902 -0.035873 0.018903 +v 0.010279 -0.038254 -0.035330 +v -0.013442 -0.039156 0.087782 +v 0.031945 -0.024423 0.005981 +v -0.030192 0.029240 -0.023995 +v 0.035847 0.011727 0.042705 +v 0.024859 0.011449 0.025895 +v -0.031524 -0.014599 -0.050702 +v -0.009590 -0.040551 0.005150 +v -0.000732 -0.004747 -0.038601 +v -0.023062 -0.035365 0.003678 +v 0.034479 0.017201 0.060467 +v 0.039757 -0.005084 0.011828 +v -0.033872 -0.027035 0.048154 +v 0.001180 -0.041516 0.018694 +v -0.043250 0.006306 0.045258 +v -0.041975 0.009793 0.009955 +v -0.025755 0.022614 -0.049639 +v 0.014065 -0.008591 -0.038534 +v 0.061167 -0.014130 0.048469 +v -0.019705 0.034498 0.045418 +v 0.055978 -0.013189 -0.005143 +v 0.042393 -0.001353 -0.010751 +v 0.005519 0.005351 0.022870 +v 0.071205 -0.005558 0.032447 +v 0.023848 -0.030862 0.060944 +v -0.008905 0.041949 0.084264 +v -0.003502 0.030992 0.028791 +v 0.035420 -0.014941 -0.043819 +v 0.038485 0.011470 0.012985 +v 0.022739 0.000544 -0.039222 +v -0.043572 -0.001876 0.045051 +v 0.027513 -0.029226 -0.001756 +v 0.016823 0.033747 0.036123 +v -0.041407 0.002781 0.066722 +v -0.022269 0.035199 -0.026589 +v 0.030490 0.027927 0.064322 +v -0.020790 -0.022355 0.038995 +v -0.037383 -0.002917 0.043742 +v -0.008307 -0.042262 0.082210 +v 0.032006 0.025750 0.044009 +v -0.041266 -0.010560 -0.013203 +v 0.040268 0.007800 0.055833 +v 0.015795 0.038063 0.026110 +v 0.038772 -0.006637 -0.022215 +v -0.015028 -0.031841 0.032330 +v -0.037275 0.014924 0.049837 +v 0.016659 0.035300 0.057650 +v -0.006794 0.015936 0.027564 +v 0.007125 -0.038496 0.050158 +v 0.023591 -0.029270 -0.050593 +v -0.003347 0.022526 0.027963 +v 0.035667 0.015385 -0.048623 +v -0.027203 -0.033579 0.053920 +v 0.064843 -0.019414 -0.000149 +v -0.013432 -0.019349 -0.039287 +v 0.038621 -0.005970 0.070697 +v 0.007837 -0.037880 0.040620 +v -0.041026 -0.014225 0.035905 +v -0.037511 -0.021982 0.046577 +v 0.070511 -0.007404 0.021511 +v -0.041536 0.005064 0.079241 +v 0.023156 -0.031341 -0.037681 +v 0.025011 0.019569 -0.049849 +v 0.030705 -0.003522 -0.047456 +v -0.005887 -0.040529 -0.019401 +v 0.047689 -0.013679 -0.018172 +v 0.033114 0.024954 0.075014 +v -0.011535 0.022486 -0.039140 +v 0.001194 0.039287 0.051751 +v 0.009206 -0.023581 -0.040046 +v 0.031531 -0.026115 0.035445 +v 0.029234 0.019626 0.026907 +v 0.010091 -0.039775 0.007658 +v 0.002369 0.037736 0.031195 +v 0.037946 -0.007408 0.058739 +v -0.039954 -0.016549 0.028239 +v -0.014416 -0.040246 0.053810 +v 0.034280 0.012156 0.030797 +v 0.034033 0.017325 0.050469 +v -0.010606 -0.040751 0.031161 +v 0.023716 0.028807 0.031954 +v -0.036391 0.023401 0.036488 +v 0.073905 -0.009391 0.042798 +v 0.032212 -0.025931 0.055814 +v -0.037429 -0.008199 0.036712 +v 0.037841 -0.010493 0.075435 +v -0.041797 -0.004942 -0.032283 +v -0.012487 0.040458 0.027093 +v -0.009111 -0.040742 0.012370 +v -0.007979 -0.015582 -0.038480 +v -0.030690 0.030258 0.041664 +v -0.011184 0.040614 0.015021 +v -0.011707 0.039126 -0.038886 +v 0.018944 -0.035226 0.080759 +v -0.023132 -0.008074 0.031669 +v 0.012600 -0.039744 0.044876 +v -0.008014 0.008292 0.026054 +v -0.021560 0.037167 0.091074 +v -0.041569 -0.003689 0.073876 +v 0.013765 -0.037814 -0.012051 +v -0.041630 0.011726 0.018904 +v -0.029469 -0.030267 -0.009740 +v 0.001246 -0.040135 -0.045947 +v -0.011923 0.040138 -0.003241 +v 0.019123 -0.037367 0.066440 +v -0.040625 -0.008155 0.063542 +v -0.037151 0.018965 -0.035461 +v 0.015761 0.037939 0.013018 +v -0.042012 -0.010580 0.029448 +v -0.037518 0.019137 -0.024782 +v -0.023988 0.035197 0.013838 +v -0.038308 0.021341 0.085198 +v -0.023682 0.033686 -0.037053 +v -0.025313 -0.034188 0.017506 +v -0.006574 0.038602 0.037546 +v 0.033806 -0.009419 0.035592 +v -0.041775 0.009218 -0.004702 +v 0.007579 0.041305 0.055177 +v -0.035242 0.021990 0.076416 +v -0.029352 0.031302 0.030655 +v 0.059075 -0.006495 -0.015097 +v 0.016865 0.028231 -0.050743 +v 0.042768 -0.013779 0.059056 +v -0.025020 -0.034998 0.046356 +v -0.012129 -0.039745 -0.005689 +v 0.021493 0.032846 0.068238 +v 0.000882 0.010489 -0.038650 +v 0.000634 -0.041383 0.011648 +v 0.008555 -0.035451 0.011389 +v -0.003250 -0.042893 0.087825 +v -0.033172 -0.025508 -0.030390 +v 0.039488 -0.003129 -0.000413 +v 0.035328 0.007505 0.021588 +v 0.017871 0.025360 -0.045508 +v 0.026687 0.028724 -0.037227 +v 0.017466 -0.037454 0.032284 +v 0.002783 -0.032174 -0.048019 +v 0.009331 0.039023 -0.033452 +v 0.025252 -0.030525 -0.025872 +v 0.078664 -0.013104 0.014476 +v -0.021943 -0.031458 0.039374 +v -0.041759 -0.007894 -0.019015 +v -0.018178 0.038659 0.040968 +v -0.041573 0.004418 -0.039253 +v -0.039677 0.010062 -0.046395 +v -0.042795 -0.001486 -0.007113 +v 0.016256 0.003063 0.023429 +v 0.028126 -0.029541 0.024657 +v 0.035734 0.004973 0.026838 +v -0.034309 0.016732 0.032697 +v 0.025095 0.031169 -0.020390 +v 0.065965 -0.019862 0.041036 +v -0.014080 0.036646 -0.050657 +v -0.029001 -0.017243 0.033187 +v 0.066282 -0.010301 -0.010890 +v -0.015677 0.039804 0.058078 +v 0.016524 -0.025747 -0.045014 +v -0.020437 0.036508 -0.019251 +v -0.021021 0.028315 -0.050777 +v -0.005473 -0.026688 -0.040595 +v 0.037934 -0.000368 -0.045601 +v 0.035504 0.017122 0.083311 +v -0.024630 -0.036050 0.086920 +v 0.012299 0.037768 0.074205 +v -0.036374 -0.020290 -0.040894 +v 0.016547 -0.033542 0.027824 +v -0.004712 0.041651 0.017814 +v 0.031951 0.022161 -0.036872 +v 0.040011 -0.005900 0.027550 +v -0.014574 0.036542 0.036510 +v 0.055097 -0.014273 -0.016273 +v 0.007023 0.033923 0.030531 +v -0.032164 0.027114 -0.018543 +v 0.062854 -0.015034 0.042636 +v 0.009689 -0.035408 0.024692 +v 0.008886 0.039213 0.083984 +v -0.027261 -0.027792 -0.050939 +v 0.041242 -0.002430 0.054935 +v -0.011225 0.041041 0.048603 +v 0.002184 -0.040072 0.069411 +v -0.036626 0.023260 0.045015 +v -0.012437 -0.038917 0.074734 +v -0.006846 0.041603 0.027738 +v -0.001569 0.040712 -0.043527 +v -0.029111 -0.029938 0.085758 +v -0.004020 0.032105 -0.045721 +v -0.041638 0.008817 -0.016408 +v 0.023735 0.025694 0.027112 +v -0.007292 -0.031252 -0.045567 +v -0.011602 0.014088 -0.038461 +v 0.055423 -0.006177 -0.006808 +v 0.064292 -0.008440 0.069382 +v -0.009433 -0.039457 0.069218 +v -0.042351 -0.000122 -0.027957 +v -0.041977 -0.002212 -0.042827 +v -0.012916 -0.040870 0.064263 +v -0.020498 -0.037057 0.015938 +v 0.037322 -0.011182 0.068554 +v 0.039813 -0.006012 0.020021 +v -0.002221 -0.041278 0.001405 +v -0.027096 0.019515 -0.045054 +v 0.058830 -0.007610 0.072595 +v 0.037971 -0.013701 0.023127 +v -0.041062 -0.008721 0.081747 +v 0.037428 0.003859 0.045600 +v 0.038675 0.003576 -0.028765 +v 0.017758 0.038092 0.079953 +v 0.011377 -0.038591 -0.024359 +v 0.035388 0.021305 0.067581 +v -0.021840 -0.017295 -0.040340 +v 0.033775 -0.021180 -0.006281 +v 0.046853 -0.008384 -0.020016 +v -0.030646 -0.030385 0.042390 +v 0.037757 -0.016454 0.057489 +v 0.019459 -0.020295 0.019017 +v 0.041364 -0.004859 0.081744 +v -0.036022 -0.020571 0.072002 +v -0.021883 -0.035882 -0.003268 +v 0.032736 0.024014 0.026249 +v -0.023243 -0.036559 0.070307 +v 0.030723 -0.014469 0.022875 +v 0.031692 -0.006176 0.045953 +v 0.029671 -0.024467 0.050989 +v 0.069013 -0.020606 0.030826 +v -0.035936 0.021846 0.090672 +v -0.019896 0.005746 0.030042 +v -0.023412 0.032981 0.056701 +v 0.038306 0.000434 -0.035261 +v -0.038246 -0.019353 0.006956 +v -0.000046 -0.039507 0.053836 +v -0.017251 -0.034093 0.045924 +v 0.010493 0.037176 0.043299 +v 0.013784 -0.039932 0.075620 +v -0.024096 -0.022348 -0.045110 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_6.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_6.obj new file mode 100644 index 0000000000000000000000000000000000000000..db1f640cb8731c6ba8979da2b5c7c4df5ba85e9d --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/mug_6.obj @@ -0,0 +1,1028 @@ +o kp.000 +v -0.000697 -0.002180 0.096517 +v -0.000697 -0.001180 0.096517 +v -0.000697 -0.001180 0.095517 +v -0.000697 -0.002180 0.095517 +v 0.000303 -0.001180 0.095517 +v 0.000303 -0.002180 0.095517 +v 0.000303 -0.001180 0.096517 +v 0.000303 -0.002180 0.096517 +o kp.001 +v -0.000009 -0.003226 -0.056067 +v -0.000009 -0.002226 -0.056067 +v -0.000009 -0.002226 -0.057067 +v -0.000009 -0.003226 -0.057067 +v 0.000991 -0.002226 -0.057067 +v 0.000991 -0.003226 -0.057067 +v 0.000991 -0.002226 -0.056067 +v 0.000991 -0.003226 -0.056067 +o kp.002 +v -0.003465 0.058106 0.073789 +v -0.003465 0.059106 0.073789 +v -0.003465 0.059106 0.072789 +v -0.003465 0.058106 0.072789 +v -0.002465 0.059106 0.072789 +v -0.002465 0.058106 0.072789 +v -0.002465 0.059106 0.073789 +v -0.002465 0.058106 0.073789 +o mesh +v 0.022737 -0.038046 0.087541 +v -0.018613 0.018827 -0.057116 +v -0.006283 0.076444 0.051516 +v -0.043306 -0.006894 0.029077 +v 0.041620 -0.008619 0.002601 +v -0.030099 0.022258 0.096584 +v -0.014398 -0.040863 -0.023656 +v 0.002200 0.069779 -0.015969 +v 0.033798 0.022462 0.062814 +v 0.000234 -0.046512 0.033278 +v 0.028096 -0.016425 -0.054546 +v -0.032453 -0.030377 0.078282 +v -0.002457 0.028613 0.021269 +v 0.023930 0.027184 -0.029058 +v -0.036459 0.016772 -0.011972 +v 0.037941 -0.023345 0.046648 +v 0.010363 0.035920 0.096173 +v -0.028101 0.029270 0.054470 +v 0.040335 -0.001549 0.096349 +v -0.023430 -0.020750 -0.057348 +v 0.008882 -0.008868 0.023964 +v 0.018712 -0.040950 -0.000697 +v 0.035128 0.021064 0.024511 +v -0.028588 -0.035309 0.009886 +v -0.013902 0.073736 0.016126 +v -0.013914 0.039886 -0.028251 +v 0.004837 0.041767 0.056697 +v -0.038381 -0.014869 -0.026387 +v -0.042787 -0.000391 0.064234 +v -0.029906 -0.034516 0.044569 +v -0.005378 -0.045713 0.065940 +v 0.015277 0.013270 -0.056805 +v -0.034332 0.022906 0.021783 +v 0.003599 -0.036667 -0.051139 +v 0.032903 -0.025357 -0.024508 +v -0.009523 -0.042107 0.096654 +v -0.039999 -0.007021 0.096688 +v 0.016670 0.034940 -0.000485 +v 0.037587 0.001975 -0.033320 +v -0.012370 0.033271 0.077387 +v -0.042311 -0.008268 0.001124 +v 0.042279 -0.005895 0.067918 +v 0.025798 -0.037776 0.025908 +v -0.015953 0.002517 0.020811 +v -0.017833 0.034770 -0.000525 +v 0.019012 -0.041845 0.054533 +v 0.035889 0.017059 -0.006982 +v -0.005353 0.060314 0.072908 +v 0.000038 -0.008835 -0.055058 +v -0.035908 0.008661 -0.037845 +v 0.042551 0.002019 0.042919 +v 0.031775 0.023010 0.088996 +v 0.012390 -0.040834 -0.026656 +v -0.005182 -0.045543 0.007552 +v -0.013487 -0.022068 0.026698 +v 0.019741 0.034768 0.038160 +v 0.002099 0.031976 -0.045122 +v 0.005715 0.072593 0.030065 +v 0.007117 0.050446 -0.030000 +v 0.033902 -0.028826 0.069296 +v 0.040346 -0.017600 0.023942 +v -0.035573 0.011186 0.041395 +v 0.018336 0.034589 0.074813 +v 0.006167 0.071377 0.006137 +v -0.032847 0.017249 0.074818 +v -0.016610 0.036548 0.036439 +v -0.031803 -0.030224 -0.011914 +v 0.014247 0.012176 0.024088 +v 0.035693 -0.022630 0.096352 +v -0.029602 0.000477 -0.056750 +v -0.036599 -0.015534 0.050667 +v -0.027097 -0.029479 -0.038589 +v 0.034109 -0.028150 0.004687 +v -0.013616 0.066020 -0.003380 +v -0.018713 -0.042343 0.026445 +v 0.000095 0.037647 -0.012229 +v 0.007936 -0.027714 0.033553 +v -0.013256 0.059945 -0.024371 +v 0.026104 -0.002114 0.031323 +v -0.026868 0.025015 -0.030862 +v 0.023886 -0.031032 -0.041169 +v 0.004957 -0.044952 0.082574 +v -0.037135 -0.025831 0.024752 +v 0.000928 -0.044760 -0.011298 +v 0.031434 0.002759 -0.052826 +v -0.009605 0.036337 0.096456 +v 0.041926 0.004125 0.017638 +v 0.030450 0.018381 0.043248 +v -0.027152 -0.033379 0.096744 +v -0.040616 0.010113 0.006178 +v -0.023260 -0.039280 0.063793 +v 0.022022 0.033166 0.017798 +v -0.010437 -0.040184 0.048443 +v -0.041045 -0.013401 0.078205 +v 0.040625 -0.000716 -0.014529 +v -0.013106 0.071528 0.034643 +v 0.010588 -0.044924 0.017474 +v -0.017579 -0.041484 -0.005525 +v 0.040219 0.008338 0.079399 +v -0.035048 -0.013052 -0.044352 +v 0.002287 0.039687 0.036196 +v 0.005380 0.064276 0.058277 +v 0.002787 0.044397 0.075360 +v -0.020931 0.034235 0.017618 +v -0.002220 0.009243 -0.055190 +v 0.024185 -0.019784 0.034281 +v -0.001206 0.038901 0.006573 +v -0.014957 -0.039121 0.079613 +v -0.014354 -0.034327 -0.050366 +v 0.028033 0.018188 -0.044745 +v -0.013340 0.037382 0.059755 +v 0.019661 0.029323 0.054710 +v -0.031845 0.024825 0.003168 +v -0.039541 0.009250 0.090026 +v -0.041231 0.000506 -0.015496 +v 0.011764 -0.021582 -0.056361 +v -0.027629 -0.011541 0.023333 +v 0.034807 -0.015710 -0.038458 +v -0.032490 0.005412 0.023857 +v 0.036332 -0.016010 0.080231 +v 0.015814 -0.038440 0.070622 +v -0.001457 -0.041271 -0.035854 +v -0.023570 0.030369 -0.015448 +v 0.036547 0.006974 0.057749 +v 0.038369 -0.018124 -0.010801 +v 0.032028 0.024055 0.007344 +v -0.038058 0.016773 0.057542 +v -0.035888 -0.026920 0.062246 +v -0.013971 0.029758 -0.044276 +v -0.015520 0.018727 0.021380 +v 0.035096 0.014848 -0.023964 +v -0.001591 0.054272 -0.014230 +v 0.010348 0.034636 -0.024911 +v -0.037796 -0.023317 0.004608 +v -0.031522 0.026380 0.038563 +v -0.000326 0.005034 0.019207 +v 0.026992 -0.034225 -0.012455 +v -0.011267 0.062279 0.058334 +v 0.021926 -0.033885 0.040690 +v -0.025894 0.030477 0.069788 +v 0.037640 -0.009320 0.053098 +v -0.036760 -0.022658 0.091322 +v -0.043323 -0.003193 0.044433 +v 0.003602 -0.046315 0.048950 +v 0.009906 -0.041521 0.096539 +v 0.016538 -0.001815 -0.055575 +v -0.006722 -0.033148 0.034831 +v -0.003178 -0.024026 -0.056203 +v 0.003507 0.023082 -0.057294 +v 0.026814 0.027437 -0.012952 +v -0.027926 0.019588 -0.044688 +v 0.016459 0.027086 -0.047611 +v -0.016320 -0.006078 -0.055418 +v 0.036776 -0.011644 0.037598 +v -0.000151 0.079094 0.017106 +v -0.001292 0.066144 0.042166 +v -0.042120 -0.012766 0.015622 +v 0.008556 0.038519 0.020070 +v -0.040028 -0.015372 -0.011478 +v -0.007381 0.051126 -0.034963 +v -0.005919 0.034407 0.046941 +v 0.040595 0.007142 0.002387 +v -0.006657 0.077423 0.003467 +v -0.022549 0.031663 0.088760 +v -0.011327 0.046539 0.072050 +v -0.025376 -0.030481 0.031363 +v 0.027209 -0.030237 0.055055 +v -0.000091 0.035430 0.085975 +v -0.035734 -0.017228 0.035868 +v -0.005498 -0.011677 0.021747 +v 0.034149 -0.029539 0.033599 +v 0.035851 0.011652 0.096145 +v -0.041922 0.002108 0.078325 +v 0.038827 -0.009474 -0.025536 +v 0.015378 -0.043589 0.032870 +v 0.034269 -0.028932 0.018459 +v -0.002599 0.052173 0.061828 +v -0.002736 0.079808 0.038217 +v 0.023293 -0.039026 0.012533 +v 0.009344 0.033538 0.046848 +v 0.042845 -0.001955 0.030003 +v 0.022095 0.029005 0.096263 +v -0.035854 0.014676 -0.025271 +v 0.000532 0.062494 -0.003768 +v 0.026731 0.024197 0.076011 +v 0.001339 0.062269 -0.026990 +v -0.027854 -0.032336 -0.024491 +v 0.033296 -0.028486 0.083858 +v -0.015665 -0.037685 -0.037640 +v 0.008267 -0.045318 0.061414 +v 0.006603 0.034414 0.067367 +v -0.042904 0.001367 0.015603 +v 0.024746 0.024571 0.031579 +v -0.022340 0.027441 0.029139 +v -0.005839 -0.045895 0.020506 +v 0.012751 0.025530 0.022692 +v 0.013028 -0.037867 -0.040162 +v -0.038772 -0.004412 -0.033778 +v -0.009435 0.038698 0.024883 +v 0.035990 -0.016425 0.064327 +v 0.024250 -0.033986 -0.028233 +v -0.041350 -0.014517 0.065527 +v 0.041668 -0.004831 0.082696 +v -0.037644 0.005219 0.052512 +v 0.015453 -0.041275 -0.014461 +v -0.005477 0.067850 0.023353 +v 0.039496 0.013258 0.033198 +v -0.042488 0.005434 0.032783 +v -0.010219 0.069407 -0.015521 +v -0.003705 0.071288 0.062889 +v -0.035808 -0.000707 -0.046160 +v 0.005425 0.039620 -0.036058 +v -0.018495 -0.036724 0.039805 +v 0.007203 -0.044870 0.001157 +v 0.023816 0.011699 0.031720 +v -0.008162 0.079848 0.027199 +v 0.042049 -0.009706 0.014802 +v -0.016522 0.006879 -0.055905 +v -0.006085 0.065965 0.007559 +v 0.015702 0.034416 -0.012514 +v 0.035419 -0.004922 -0.044413 +v -0.012890 0.035597 -0.013418 +v -0.015996 -0.043157 0.012276 +v 0.027695 -0.031573 0.096533 +v -0.007509 0.026754 -0.054274 +v 0.026857 -0.035813 0.076007 +v 0.011439 -0.038898 0.043788 +v 0.001447 -0.020004 0.026760 +v -0.002219 -0.043224 -0.024111 +v -0.031677 0.024092 0.084915 +v 0.005578 0.054693 0.070055 +v -0.008483 0.045658 -0.019418 +v 0.024869 0.031067 0.065553 +v -0.007031 0.037631 -0.038807 +v -0.020881 -0.035581 0.052137 +v 0.014436 0.031145 -0.036782 +v -0.032917 0.015609 0.030885 +v -0.028043 0.012486 -0.053966 +v -0.019060 0.035386 0.047802 +v 0.000709 0.074520 -0.005098 +v -0.041696 0.003806 -0.004320 +v 0.037609 -0.012225 0.091458 +v 0.005371 0.072114 0.049722 +v 0.002239 0.018026 0.021445 +v 0.038407 0.014386 0.069704 +v -0.037183 -0.025586 0.043710 +v 0.015577 -0.033211 -0.050408 +v 0.003077 0.045525 -0.020046 +v -0.024074 -0.033851 0.085326 +v 0.012474 0.033199 0.084542 +v 0.037988 0.015323 0.011668 +v 0.026512 -0.036699 0.064627 +v -0.036708 0.008900 0.068055 +v 0.010131 0.032532 0.031310 +v -0.040287 0.012297 0.019184 +v 0.033519 0.013231 -0.036074 +v -0.010197 -0.045373 0.037717 +v -0.042951 -0.007353 0.055313 +v -0.028727 -0.010787 -0.056892 +v 0.032853 0.005564 0.038369 +v -0.026988 -0.035861 -0.002881 +v -0.010788 0.037990 0.012436 +v 0.003714 -0.041684 0.071203 +v -0.028137 -0.036116 0.021099 +v 0.037418 0.017363 0.052021 +v -0.011354 0.067199 0.047807 +v 0.030344 0.026806 0.053083 +v -0.005271 -0.045161 0.078282 +v -0.009779 -0.043386 -0.013848 +v -0.035735 0.021044 0.047325 +v -0.034514 -0.020196 -0.035309 +v -0.009899 -0.015256 -0.055381 +v 0.039193 -0.019307 0.010223 +v -0.039170 0.004299 -0.027056 +v -0.013123 -0.039550 0.059512 +v 0.003777 0.068824 0.017027 +v 0.034044 -0.027179 -0.006307 +v 0.036782 -0.024969 0.057445 +v -0.029264 0.021712 0.062320 +v -0.012151 0.057887 -0.013665 +v -0.006256 0.037837 -0.003059 +v -0.016402 -0.011396 0.022202 +v -0.029701 -0.022030 -0.048505 +v -0.005241 0.034841 0.066616 +v -0.017975 0.030378 -0.034137 +v -0.030514 -0.026951 0.052371 +v -0.023496 0.011410 0.022225 +v -0.023801 -0.037309 -0.013569 +v -0.035810 -0.004967 0.020767 +v 0.026543 0.012181 -0.054793 +v -0.037892 -0.022746 0.071959 +v 0.022171 -0.025617 -0.054178 +v 0.006469 0.037954 -0.001944 +v -0.023252 -0.034289 0.074372 +v 0.019748 -0.010991 0.030032 +v -0.029741 0.026100 -0.007817 +v 0.026351 -0.005597 -0.057536 +v 0.007096 0.059421 -0.017749 +v -0.035200 -0.028189 0.014221 +v -0.038837 -0.005558 0.085042 +v 0.014656 0.036652 0.060801 +v 0.027330 0.028173 -0.001253 +v -0.025508 -0.021938 0.025057 +v 0.022116 0.028249 0.084618 +v 0.038286 0.010409 -0.014806 +v 0.029968 -0.022003 -0.045370 +v -0.024733 0.023658 0.017590 +v 0.023445 0.026399 0.045259 +v -0.011640 0.055312 0.066249 +v -0.013443 0.029258 0.023091 +v 0.041580 0.004528 0.068720 +v -0.025211 0.031073 0.008713 +v -0.000892 -0.042180 0.090669 +v 0.009314 0.001274 0.021909 +v -0.004968 -0.038827 -0.045273 +v -0.018128 -0.037749 0.092957 +v 0.010308 -0.011438 -0.055117 +v -0.036559 -0.021887 -0.019071 +v -0.002717 -0.041487 0.056934 +v -0.014634 -0.026048 -0.057641 +v 0.034751 0.005565 -0.042768 +v 0.018107 0.003170 0.027090 +v 0.006711 -0.037821 0.034706 +v 0.014037 0.036569 0.009261 +v 0.007223 0.002331 -0.055095 +v 0.035610 0.018828 0.078433 +v 0.014367 -0.019482 0.031463 +v 0.023501 0.023743 0.021565 +v -0.024953 -0.001842 0.022605 +v -0.015022 -0.031717 0.029183 +v -0.014602 -0.043315 0.069218 +v -0.014350 0.049935 -0.027675 +v -0.008692 0.017010 -0.056458 +v -0.034822 -0.029284 0.034568 +v 0.013737 -0.039464 0.080389 +v -0.021909 0.028027 0.040900 +v 0.037969 0.003250 0.087868 +v 0.029207 -0.027295 0.042714 +v -0.004912 -0.045099 -0.002460 +v -0.032203 0.017556 -0.035116 +v -0.008058 -0.000488 -0.055091 +v 0.019057 0.034982 0.027596 +v 0.023020 0.025464 -0.038825 +v -0.002315 -0.041133 0.042760 +v 0.005657 0.074100 0.039908 +v 0.039718 0.012388 0.022859 +v 0.039884 0.012343 0.043084 +v 0.038719 -0.019216 -0.000935 +v -0.022960 -0.029694 -0.048617 +v 0.031522 -0.024523 -0.034285 +v -0.005473 0.034208 0.033392 +v -0.005814 0.042087 0.053189 +v -0.002268 0.062684 0.051383 +v -0.042318 -0.012887 0.042794 +v 0.026349 -0.036236 0.003391 +v -0.036752 0.018951 0.012829 +v 0.034173 0.022616 0.035188 +v -0.019597 0.029797 0.059965 +v -0.011144 0.076424 0.042983 +v 0.033639 -0.019035 0.031751 +v 0.004788 0.034950 0.076985 +v 0.042698 -0.000961 0.052551 +v -0.031357 0.022386 -0.021335 +v 0.037449 0.014336 0.086877 +v 0.013650 -0.043580 0.008321 +v -0.038706 -0.006093 0.072363 +v -0.038868 0.012828 0.080914 +v 0.000020 0.036060 0.096134 +v 0.019214 -0.037683 0.096498 +v 0.021810 0.020310 -0.052735 +v 0.037409 -0.017714 -0.020367 +v -0.037335 0.016510 -0.002404 +v -0.027313 -0.030630 0.064725 +v -0.005567 -0.033307 -0.056154 +v -0.009960 0.037253 0.085760 +v -0.035013 -0.020206 0.082258 +v 0.019774 0.031485 -0.020635 +v -0.021780 0.028773 0.079700 +v 0.003922 0.046084 0.065207 +v 0.041079 -0.007407 -0.007755 +v 0.009098 -0.030990 -0.057035 +v 0.025627 -0.037803 0.049001 +v -0.041494 -0.016137 0.027768 +v -0.036907 -0.023494 -0.007548 +v 0.042600 -0.007674 0.045159 +v 0.032490 0.020877 -0.017108 +v 0.018855 -0.015254 -0.056540 +v -0.014507 0.032328 0.068253 +v -0.007849 0.044129 0.063329 +v 0.003353 0.063627 0.067429 +v -0.017352 0.032581 -0.023454 +v 0.040491 0.005051 -0.007128 +v -0.005940 0.013495 0.020871 +v -0.038967 0.009780 -0.017679 +v -0.019548 0.024692 -0.049873 +v -0.038972 0.002543 0.096500 +v 0.025263 0.030487 0.007554 +v -0.038397 -0.003309 0.036508 +v -0.014105 0.072375 0.005942 +v 0.003172 -0.046331 0.024448 +v -0.040740 -0.007817 -0.019607 +v -0.035102 0.014448 0.096494 +v -0.040234 -0.016818 -0.001791 +v -0.042566 0.001071 0.005998 +v -0.008794 0.074535 -0.005057 +v -0.021044 -0.036724 -0.028913 +v 0.003463 -0.045921 0.010745 +v 0.034247 -0.006329 0.030348 +v -0.012445 -0.043032 0.087562 +v 0.013259 0.023739 -0.055565 +v -0.003870 0.038569 0.077855 +v -0.001888 0.052245 0.076329 +v 0.030222 -0.033187 0.011440 +v -0.013314 -0.043670 0.003569 +v 0.039324 0.001987 -0.023146 +v 0.002177 0.039593 0.026500 +v -0.041817 -0.006799 -0.008987 +v 0.037343 -0.006880 -0.035360 +v 0.042253 -0.002470 0.009321 +v -0.004456 0.067554 0.032366 +v -0.001207 0.035001 0.056586 +v -0.003650 0.039333 0.017871 +v -0.021567 -0.039998 0.003119 +v 0.036878 0.016412 0.001982 +v 0.033695 -0.026284 -0.015292 +v 0.038361 -0.000883 0.075279 +v 0.038163 -0.021399 0.072141 +v 0.030549 0.020482 -0.029226 +v -0.018380 0.032146 0.096659 +v 0.007673 -0.043256 -0.018388 +v -0.010044 -0.040883 -0.031491 +v -0.011271 0.071018 0.056544 +v 0.009802 -0.040257 0.054232 +v 0.023837 0.003303 -0.057452 +v -0.030267 -0.027769 0.087288 +v -0.033217 0.008221 -0.048123 +v -0.036596 0.018790 0.066903 +v 0.004159 -0.039566 -0.042513 +v 0.031101 0.025621 0.016023 +v -0.035546 -0.018616 0.058893 +v 0.006553 0.068188 -0.006910 +v 0.000303 0.079905 0.029600 +v 0.037450 -0.011767 0.072620 +v -0.009810 -0.003584 0.019373 +v -0.013167 0.071400 0.025614 +v -0.033418 -0.025186 -0.026557 +v 0.017832 -0.028089 0.035556 +v -0.021603 0.026491 -0.041497 +v 0.002907 0.039455 0.047209 +v 0.021626 -0.037293 -0.020573 +v 0.000044 0.055302 -0.033019 +v -0.037395 -0.014261 0.088198 +v -0.007059 0.065988 -0.023370 +v -0.025809 -0.038326 0.035119 +v -0.039381 -0.021142 0.017095 +v -0.038568 -0.016017 0.096617 +v -0.043068 0.001767 0.024939 +v -0.041403 0.008180 0.060802 +v 0.032855 -0.014099 -0.047370 +v -0.035728 -0.013918 0.021476 +v 0.042699 -0.004053 0.021287 +v 0.038149 -0.002741 0.059639 +v -0.028499 -0.035603 0.056129 +v 0.010531 -0.043537 -0.007803 +v 0.007748 -0.040847 -0.033870 +v 0.039974 -0.010348 -0.015730 +v 0.018913 0.035106 0.048447 +v 0.001951 0.047430 -0.036145 +v 0.037216 -0.001803 0.037457 +v -0.032650 0.025136 0.030194 +v 0.016006 -0.043224 0.024371 +v 0.036734 0.005279 0.049407 +v -0.031633 0.013869 0.022268 +v 0.042187 -0.010379 0.029158 +v -0.030506 0.026057 0.075382 +v -0.030832 0.019804 0.054217 +v 0.006150 0.015129 -0.056072 +v 0.016309 0.031293 0.067132 +v -0.017202 0.036216 0.027079 +v -0.026083 0.029916 -0.000298 +v 0.035174 -0.017337 0.053917 +v -0.006324 0.060111 -0.029741 +v -0.008311 0.078862 0.012531 +v 0.007696 0.036508 -0.015519 +v 0.033962 -0.019662 0.040080 +v 0.009177 0.033732 0.055207 +v 0.035589 -0.018167 -0.030515 +v 0.041719 -0.011978 0.059880 +v 0.011519 0.037999 0.040138 +v -0.008195 0.038993 0.040354 +v -0.010334 0.064431 0.066317 +v -0.038253 -0.023649 0.052860 +v -0.042631 0.004978 0.043088 +v 0.005550 -0.046169 0.039628 +v -0.007209 -0.045883 0.029704 +v -0.040206 0.012885 0.027431 +v 0.027826 -0.036272 0.033750 +v -0.032809 -0.030056 -0.002435 +v -0.037798 0.017947 0.037080 +v 0.037976 -0.020138 0.087153 +v 0.007747 0.042397 -0.026040 +v 0.017660 -0.037582 -0.032047 +v -0.007779 0.022437 0.022198 +v 0.012466 -0.040096 0.088455 +v 0.032513 0.019754 0.096474 +v -0.032197 -0.022645 0.030569 +v 0.028356 -0.031875 -0.020172 +v -0.004470 -0.046185 0.050272 +v 0.003412 0.039138 0.013298 +v 0.036882 -0.025285 0.027198 +v 0.029232 -0.028100 0.062662 +v 0.019897 -0.041514 0.044563 +v -0.026465 0.024483 0.046639 +v 0.032467 -0.007083 -0.051684 +v -0.022984 -0.039821 0.016028 +v -0.006006 0.031834 -0.044590 +v 0.033628 0.014695 0.060451 +v -0.017220 -0.042811 0.052640 +v 0.030124 -0.027386 0.076332 +v 0.042201 0.004437 0.034960 +v -0.018245 0.035191 0.010023 +v -0.030691 0.026623 0.012667 +v 0.031803 -0.032169 0.048685 +v -0.000059 0.077933 0.008098 +v -0.034097 0.015379 0.088551 +v -0.006197 0.038213 -0.017369 +v 0.017581 0.019414 0.025039 +v 0.027110 0.029918 0.039051 +v 0.015517 -0.035657 0.033994 +v -0.039598 0.014099 0.048268 +v 0.031285 0.010020 -0.048727 +v -0.032528 -0.027471 0.096649 +v 0.024176 -0.037233 -0.005170 +v 0.008051 0.028390 -0.051719 +v -0.039778 0.009934 -0.009024 +v 0.015675 -0.043049 0.064138 +v -0.016013 -0.043460 0.043188 +v -0.033554 -0.007417 -0.051584 +v 0.017693 0.033936 0.090447 +v -0.013611 -0.038393 0.033180 +v -0.006408 0.067268 0.015530 +v -0.025750 0.028729 0.095356 +v -0.033031 -0.030451 0.005539 +v -0.008825 0.060842 -0.007156 +v -0.041538 -0.014265 0.007912 +v 0.040888 -0.016136 0.048637 +v 0.022001 0.031835 -0.005738 +v 0.006572 0.038346 0.005976 +v 0.031433 0.018534 0.071830 +v -0.010344 0.038040 0.003602 +v 0.041540 -0.000444 -0.001669 +v -0.004281 -0.024521 0.029541 +v 0.025014 0.025534 0.058943 +v 0.042001 0.004954 0.026481 +v -0.012378 0.032809 0.042590 +v 0.041362 0.005504 0.009962 +v 0.005935 0.031209 0.020651 +v -0.041380 0.001070 0.088231 +v 0.028905 -0.011412 0.032826 +v -0.028291 -0.028993 0.039336 +v 0.007355 0.053308 -0.022776 +v -0.028181 0.029403 0.024404 +v -0.017620 -0.015213 -0.056218 +v -0.013658 0.011206 0.021799 +v 0.032412 -0.031616 0.025483 +v -0.024123 0.032588 0.035053 +v 0.004131 0.057117 0.062850 +v 0.005864 0.074865 0.022677 +v -0.011760 0.043730 -0.034584 +v 0.009873 -0.044433 0.075937 +v 0.028806 -0.033152 0.088029 +v 0.000913 -0.032146 0.034924 +v 0.028533 0.017533 0.033916 +v 0.021928 -0.034750 0.058338 +v 0.002740 0.072132 0.056929 +v 0.002439 0.068375 0.035605 +v 0.030763 0.025755 0.069017 +v -0.009611 0.038449 0.072492 +v 0.030288 0.026890 0.026865 +v -0.012019 0.037948 0.051596 +v -0.013990 -0.044334 0.020811 +v -0.010026 0.078903 0.035893 +v 0.016491 0.031915 -0.028441 +v -0.012429 0.052129 -0.019421 +v 0.007493 -0.045811 0.031253 +v -0.035648 -0.017823 0.043519 +v -0.006843 -0.041325 0.071960 +v 0.001303 0.077157 0.045836 +v -0.043233 -0.005357 0.019436 +v 0.031676 -0.024634 0.050660 +v -0.028595 -0.028791 0.024415 +v -0.038612 -0.002788 0.051161 +v 0.010608 0.030963 -0.043262 +v -0.038463 -0.007751 0.063991 +v -0.037575 0.016918 0.005243 +v 0.037433 0.007367 -0.028013 +v -0.022123 0.000869 -0.056431 +v 0.029266 -0.034476 0.019075 +v -0.023850 -0.039509 0.046495 +v 0.027251 0.025958 -0.020268 +v -0.037493 -0.011206 0.031714 +v -0.042923 -0.006734 0.011283 +v -0.021607 0.032444 -0.006540 +v 0.014409 -0.043892 0.049019 +v 0.030396 -0.032017 -0.001218 +v -0.001399 0.034715 0.041046 +v -0.031317 -0.026136 0.071303 +v -0.037759 -0.011745 -0.034330 +v 0.009575 -0.015403 0.027534 +v -0.008781 0.053568 0.073954 +v 0.003049 -0.015603 -0.055171 +v 0.025227 -0.028502 0.035481 +v 0.005177 0.075763 0.013191 +v -0.019567 -0.034013 -0.043664 +v -0.028134 0.029017 0.062418 +v -0.015211 0.032431 0.088437 +v -0.042899 0.001337 0.055926 +v 0.020868 -0.039922 0.077230 +v -0.005305 0.073044 -0.011442 +v 0.031266 -0.026153 0.091668 +v 0.036171 -0.025729 0.012112 +v 0.002047 0.065778 0.003811 +v 0.003797 0.059410 -0.011205 +v 0.005127 0.037695 0.091143 +v -0.022115 -0.032967 0.025299 +v 0.001803 -0.031093 -0.057553 +v 0.004849 -0.042717 -0.025915 +v -0.024417 0.019531 -0.051612 +v 0.028826 0.019909 -0.037691 +v -0.010279 0.078568 0.020222 +v 0.015065 0.036535 0.017441 +v -0.027855 0.022043 0.025671 +v -0.014579 0.065457 -0.010574 +v -0.030931 -0.023884 -0.041220 +v 0.016879 0.030144 0.032590 +v -0.021050 -0.038168 -0.020243 +v -0.008375 -0.045386 0.059325 +v 0.020881 -0.040992 0.036845 +v -0.038326 0.002596 0.071280 +v -0.002585 0.033887 0.026740 +v 0.031762 0.022989 -0.007639 +v 0.027079 0.004708 0.033574 +v 0.002264 -0.041793 0.063419 +v -0.035266 -0.019342 0.066132 +v -0.016017 0.030852 0.031795 +v -0.005731 0.063584 -0.000306 +v 0.017760 -0.042214 0.015921 +v 0.020230 0.027935 0.026492 +v 0.001632 0.068438 0.024517 +v -0.003516 0.058644 0.057244 +v 0.026616 0.028000 0.090717 +v -0.032292 0.014239 -0.042577 +v -0.015837 0.031604 0.053038 +v 0.034185 0.022443 0.047897 +v -0.032218 -0.020069 0.023300 +v -0.037089 -0.007077 -0.040928 +v 0.011821 0.037215 0.071423 +v -0.041734 -0.013891 0.058004 +v 0.015682 -0.028169 -0.056692 +v 0.015002 0.031259 0.043079 +v 0.025612 -0.031965 0.070097 +v 0.029385 -0.034652 0.042421 +v -0.012592 -0.037302 -0.044100 +v 0.016591 -0.003773 0.026251 +v -0.036030 0.009749 0.034403 +v -0.037484 0.000336 -0.038969 +v -0.014592 0.037030 0.019373 +v 0.022870 0.023315 -0.045639 +v 0.042814 -0.006185 0.036730 +v -0.031500 -0.015181 -0.051986 +v -0.027623 0.022293 -0.037877 +v -0.012312 0.034722 -0.033987 +v -0.026275 0.027230 -0.022570 +v -0.000607 0.028134 -0.053227 +v 0.016210 0.006265 -0.055977 +v -0.032019 0.017843 0.041190 +v -0.038189 -0.001188 0.029749 +v 0.030211 0.019960 0.057179 +v -0.005111 0.045972 0.076846 +v 0.027059 -0.029999 -0.034578 +v -0.019732 -0.040178 0.084706 +v -0.017481 -0.004342 0.020133 +v -0.018739 0.034770 0.073343 +v -0.002082 0.042750 0.059510 +v 0.027664 0.023345 0.082947 +v 0.001012 0.067075 0.010659 +v 0.018158 -0.034448 -0.043551 +v -0.014382 0.062979 -0.017971 +v 0.024265 -0.028001 -0.047913 +v 0.037905 -0.022929 0.018441 +v 0.004577 -0.022403 -0.055972 +v -0.030057 -0.027992 -0.032407 +v 0.041016 -0.016014 0.033163 +v -0.023260 0.008737 -0.057463 +v 0.009769 0.036879 -0.008023 +v 0.037786 0.004874 0.095266 +v -0.028948 0.022185 0.069291 +v -0.018359 0.034426 0.082524 +v 0.008259 0.012091 0.020484 +v 0.005594 0.024098 0.022210 +v -0.036848 0.008693 0.075029 +v -0.002650 -0.046027 0.014108 +v 0.009715 -0.044729 0.068969 +v -0.008207 0.006945 0.020106 +v 0.034109 0.013044 0.047660 +v 0.027014 0.022790 0.038234 +v -0.025652 0.031328 0.047656 +v 0.008529 0.034962 -0.031912 +v 0.008956 0.038620 0.027736 +v -0.009884 0.067906 0.039630 +v -0.020207 0.028332 0.021209 +v 0.038539 -0.005665 0.089369 +v -0.024717 -0.038948 0.028295 +v -0.010897 -0.016638 0.023244 +v 0.036873 0.007247 0.073025 +v 0.039724 0.011840 0.063393 +v 0.026210 -0.031641 0.081796 +v -0.009520 0.010202 -0.055547 +v -0.031401 -0.033236 0.029371 +v 0.018937 -0.036846 0.064663 +v 0.020532 -0.040386 0.006342 +v 0.041893 0.004213 0.061822 +v -0.042628 -0.011332 0.022931 +v 0.002444 -0.043549 0.096565 +v 0.025170 0.031398 0.032565 +v 0.006981 -0.044256 0.089145 +v -0.001316 -0.042081 0.083777 +v 0.004472 -0.040781 0.043951 +v 0.009513 0.008825 -0.055457 +v -0.032594 -0.023701 0.038333 +v 0.031668 0.011893 0.041285 +v 0.037806 -0.002747 0.045491 +v -0.042172 -0.005711 0.078296 +v -0.017674 -0.040868 -0.012374 +v 0.000054 0.037045 -0.039492 +v 0.022740 0.027492 0.071023 +v 0.036162 -0.014015 0.044133 +v -0.011734 0.035768 -0.020591 +v 0.036551 -0.023967 0.078291 +v -0.019718 -0.035304 0.032768 +v -0.007570 -0.045910 0.044165 +v 0.000027 -0.039545 0.036518 +v -0.006796 -0.008475 -0.054986 +v 0.017052 -0.037087 0.048927 +v -0.021964 -0.016138 0.024331 +v 0.000503 -0.045685 0.002225 +v -0.000284 0.002695 -0.055000 +v -0.026278 0.024356 0.033790 +v -0.037981 0.004852 0.083176 +v 0.023181 0.018056 0.028694 +v -0.022230 -0.034043 -0.037185 +v 0.008206 0.038429 0.062095 +v -0.018110 -0.037489 0.069614 +v -0.019515 -0.025218 0.027038 +v -0.039832 -0.006236 -0.027313 +v 0.025669 0.030857 0.023645 +v 0.002353 0.034431 0.031374 +v -0.024434 -0.005484 -0.057074 +v 0.009935 -0.036444 -0.048463 +v 0.021448 -0.038331 -0.013298 +v -0.037714 0.003933 0.037445 +v 0.033241 0.021793 -0.001136 +v -0.015349 0.035359 -0.007109 +v 0.012265 -0.044641 0.038794 +v 0.010827 0.037207 0.079063 +v 0.041334 -0.010239 0.078632 +v -0.037482 -0.013258 0.072462 +v 0.036133 -0.026584 0.041003 +v 0.021554 0.033440 0.059710 +v 0.040013 -0.008351 0.096425 +v -0.039861 0.012836 0.012480 +v -0.004828 0.037917 0.090071 +v -0.009816 -0.039934 0.041664 +v -0.026014 -0.031655 0.050258 +v -0.029594 0.025433 -0.014508 +v -0.009282 -0.045107 0.014664 +v 0.020630 -0.041105 0.028747 +v 0.035551 0.019955 0.015863 +v 0.013161 0.031685 0.025302 +v -0.001947 0.015888 -0.055936 +v -0.005070 0.045469 -0.037685 +v 0.001177 0.035067 0.071369 +v -0.012549 0.023027 -0.056569 +v -0.003564 0.067079 0.068061 +v 0.005943 0.040945 0.070614 +v 0.007094 0.033808 0.037102 +v -0.011669 0.068120 0.010480 +v 0.005287 0.057090 -0.028348 +v -0.036864 0.009914 -0.031383 +v 0.000708 -0.013406 0.023373 +v 0.020341 0.028154 0.038038 +v 0.041897 -0.011462 0.021942 +v 0.040371 -0.017941 0.040199 +v 0.006717 0.033183 -0.038043 +v -0.007656 0.034268 0.057962 +v 0.027396 0.024304 0.096171 +v -0.039285 -0.014932 -0.019816 +v -0.003467 -0.005496 0.020468 +v -0.004682 -0.018378 0.024837 +v -0.007163 -0.039989 -0.038968 +v 0.002767 -0.007262 0.021984 +v -0.038304 -0.007432 0.045288 +v 0.001813 -0.026098 0.031604 +v 0.037815 -0.022790 0.064148 +v 0.039055 0.010837 -0.004252 +v -0.042813 -0.010412 0.036679 +v -0.019253 -0.042147 0.036114 +v 0.036479 -0.000332 0.028717 +v -0.020692 0.034016 0.066692 +v 0.006730 0.065484 -0.013836 +v -0.022156 0.033592 0.053338 +v 0.030473 -0.023847 0.036376 +v 0.041002 0.008741 0.053039 +v -0.032289 -0.028590 -0.018276 +v -0.011462 -0.043734 -0.004590 +v 0.000522 -0.042066 0.077460 +v 0.002687 0.068374 0.062923 +v 0.017410 0.030980 0.080807 +v 0.005668 0.038028 0.084171 +v -0.020870 0.034502 0.041275 +v 0.003842 -0.046160 0.017916 +v -0.042298 -0.012269 0.050720 +v -0.005018 0.078867 0.044303 +v -0.002534 0.080252 0.023695 +v 0.018127 0.028504 0.020266 +v -0.029145 -0.034461 0.069700 +v -0.007337 -0.043216 -0.020045 +v -0.004908 0.039656 0.029839 +v 0.007085 -0.005765 -0.054971 +v -0.027002 0.018020 0.019962 +v 0.037743 -0.009483 0.064403 +v 0.017187 -0.008296 -0.055694 +v 0.002859 0.075446 0.000979 +v -0.013634 0.027136 -0.051072 +v -0.011951 0.066422 0.002896 +v -0.002262 0.048678 -0.017480 +v -0.034602 0.013684 0.052980 +v 0.025569 0.030950 0.051584 +v -0.019623 -0.041582 0.058547 +v 0.006260 0.068903 -0.000017 +v -0.030291 -0.027354 0.058848 +v 0.001339 0.066700 -0.021613 +v -0.034443 -0.029634 0.047960 +v 0.039910 -0.005246 -0.020755 +v 0.036490 -0.000388 -0.039926 +v 0.001380 0.034958 0.062513 +v 0.003795 0.065940 0.050783 +v -0.035301 0.019446 0.082269 +v -0.003035 -0.046345 0.039020 +v -0.040538 0.011414 0.054109 +v 0.000628 0.057577 0.073702 +v -0.043231 0.000647 0.038088 +v -0.003147 -0.036788 -0.051323 +v 0.031800 0.013576 -0.042252 +v 0.037096 0.018119 0.043349 +v -0.008340 -0.041243 0.082973 +v 0.004002 0.077773 0.034382 +v 0.024122 -0.011599 -0.057434 +v 0.015505 0.036540 0.053671 +v 0.037522 -0.024185 0.034554 +v -0.034499 0.014020 0.062086 +v -0.011042 0.055843 -0.030339 +v -0.003615 0.074417 0.057321 +v 0.039244 0.008987 0.090608 +v -0.006103 -0.044588 -0.008703 +v -0.038840 -0.022774 0.035425 +v -0.038681 -0.002711 0.058445 +v -0.013008 0.076614 0.030756 +v -0.041854 0.006678 0.012262 +v 0.040146 -0.013537 -0.006337 +v 0.020218 0.033624 0.005284 +v 0.040736 -0.015660 0.016603 +v 0.023116 0.031654 0.078088 +v -0.022363 -0.034771 0.059407 +v -0.037374 -0.007123 0.026534 +v -0.042133 0.006265 0.019932 +v -0.038263 0.008832 0.096812 +v -0.037342 0.005019 0.028822 +v 0.014272 0.037084 0.032779 +v -0.033197 0.022794 -0.002665 +v 0.001440 -0.046236 0.056625 +v -0.004229 0.070294 -0.017318 +v 0.002516 -0.045171 -0.003728 +v -0.007741 0.053499 -0.015437 +v -0.040092 0.010761 -0.000068 +v 0.037143 -0.016501 0.096519 +v 0.035196 0.012120 0.079741 +v -0.027851 -0.033441 -0.018298 +v -0.013866 -0.044289 0.029947 +v -0.003251 0.023243 -0.057288 +v -0.001003 -0.045781 0.070589 +v -0.016890 -0.037676 0.047770 +v -0.024828 -0.025101 -0.053055 +v 0.034770 0.012142 0.054259 +v -0.028334 0.023277 0.090661 +v -0.040454 0.000308 -0.022405 +v -0.012032 0.073079 0.050683 +v -0.026088 0.030806 0.016726 +v -0.036290 0.020368 0.028416 +v 0.038192 -0.001078 0.069040 +v 0.037789 -0.021980 0.004759 +v 0.004351 0.068407 0.044809 +v 0.016124 -0.036158 0.040393 +v 0.001973 0.039637 -0.018309 +v 0.029507 -0.028875 -0.028380 +v 0.016284 0.032884 0.096430 +v -0.010655 -0.045045 0.052341 +v 0.013232 -0.044096 0.057847 +v 0.037699 -0.011573 0.085260 +v 0.016136 -0.040161 -0.021190 +v -0.026705 -0.036556 0.003792 +v -0.003700 -0.014882 -0.055157 +v 0.020490 0.028523 -0.034054 +v -0.013362 0.072713 -0.001285 +v 0.029899 0.027415 0.043985 +v -0.030031 0.014550 -0.048484 +v -0.035831 0.004884 -0.042818 +v -0.038531 -0.008842 0.090949 +v -0.026641 -0.035974 0.080119 +v -0.002044 0.058514 -0.009401 +v 0.033333 -0.030194 0.055867 +v -0.038262 0.001378 0.046615 +v 0.000493 0.038396 -0.003401 +v -0.003298 0.039653 0.045034 +v -0.008432 0.050474 0.064199 +v 0.041085 -0.001213 -0.008413 +v -0.032834 -0.031482 0.020877 +v 0.031379 0.000212 0.033440 +v -0.020904 -0.040209 0.074357 +v 0.006066 0.032805 0.026573 +v 0.012819 0.034788 -0.018422 +v 0.023544 -0.019817 -0.056869 +v 0.038087 0.002303 0.081809 +v -0.034682 -0.026992 0.082882 +v 0.021233 -0.035642 0.081604 +v 0.028005 0.011197 0.036421 +v -0.031303 0.005519 -0.053718 +v -0.000247 0.034305 0.020806 +v 0.036816 0.006762 0.065197 +v 0.021483 -0.034187 -0.036505 +v -0.011709 0.069337 0.020039 +v 0.021665 0.015714 -0.056772 +v -0.031737 0.025935 0.050855 +v -0.000076 0.034878 0.050578 +v 0.005617 0.048737 0.071428 +v 0.028141 0.022228 0.048764 +v -0.022963 0.005327 0.022313 +v 0.037571 0.001811 0.054655 +v 0.037180 -0.012097 -0.032200 +v -0.027753 -0.034056 0.090715 +v 0.000103 -0.041603 0.050578 +v -0.027369 0.028565 0.082094 +v -0.033773 -0.018467 -0.041902 +v -0.039447 -0.020340 0.009641 +v -0.007129 -0.044022 0.091414 +v -0.041187 -0.011234 0.083864 +v -0.022417 -0.011195 -0.056858 +v -0.012408 0.042620 -0.023062 +v -0.023613 -0.038006 -0.007557 +v -0.041233 0.003984 -0.010540 +v -0.007248 0.037106 -0.008984 +v 0.006794 -0.022578 0.030570 +v -0.011543 0.037714 0.065517 +v 0.037538 0.017299 0.029152 +v 0.025203 -0.031845 0.045762 +v -0.038126 0.015545 0.072419 +v -0.023079 -0.039442 0.008941 +v -0.011351 0.071615 -0.009685 +v -0.014470 0.014460 -0.056659 +v 0.021766 0.009640 -0.057466 +v -0.001653 0.022657 0.021816 +v -0.009626 0.033249 0.027468 +v -0.023458 -0.039686 0.022418 +v -0.023032 -0.033903 0.044434 +v 0.008900 0.038575 0.050130 +v -0.019912 -0.027911 -0.055105 +v -0.008180 0.056058 0.061377 +v -0.020470 0.030143 -0.028663 +v -0.011870 0.038129 0.045359 +v 0.017769 -0.021431 -0.057388 +v 0.000216 0.042297 0.052880 +v -0.038242 0.002691 0.061787 +v 0.035954 -0.024862 -0.000183 +v 0.009390 0.019484 0.022707 +v -0.041432 -0.011532 -0.005327 +v -0.009730 -0.029415 0.031231 +v 0.022729 -0.039740 0.021149 +v -0.031235 0.021267 -0.027222 +v -0.002788 -0.044214 -0.015964 +v -0.022710 0.027867 0.065442 +v -0.005261 0.080420 0.032404 +v 0.040147 -0.016019 0.005313 +v -0.011649 0.032708 0.035440 +v -0.041207 0.010210 0.039640 +v -0.014177 -0.043172 0.075286 +v -0.025926 -0.032904 -0.030115 +v 0.040796 -0.014733 0.068665 +v 0.000590 0.072440 -0.010734 +v -0.008842 -0.022151 -0.056177 +v -0.004896 0.034856 0.073162 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/tree_0.obj b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/tree_0.obj new file mode 100644 index 0000000000000000000000000000000000000000..96de2a02ff65b726423afde2ac67eb4638fc2a36 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/objects/tree_0.obj @@ -0,0 +1,1037 @@ +o kp.000 +v -0.003398 0.011431 -0.066237 +v -0.003398 0.012431 -0.066237 +v -0.003398 0.012431 -0.067237 +v -0.003398 0.011431 -0.067237 +v -0.002398 0.012431 -0.067237 +v -0.002398 0.011431 -0.067237 +v -0.002398 0.012431 -0.066237 +v -0.002398 0.011431 -0.066237 +o kp.001 +v 0.001679 -0.007199 0.043074 +v 0.001679 -0.006199 0.043074 +v 0.001679 -0.006199 0.042074 +v 0.001679 -0.007199 0.042074 +v 0.002679 -0.006199 0.042074 +v 0.002679 -0.007199 0.042074 +v 0.002679 -0.006199 0.043074 +v 0.002679 -0.007199 0.043074 +o mesh +v -0.016905 0.014592 -0.032826 +v 0.016502 -0.044259 0.018418 +v 0.012251 0.028714 0.033317 +v -0.021454 -0.007958 0.015556 +v 0.021134 -0.002489 -0.007378 +v 0.012852 -0.010737 0.040023 +v -0.005756 -0.031631 -0.012675 +v -0.010268 0.033013 0.001297 +v 0.009213 -0.012288 -0.042209 +v -0.001837 0.012890 -0.066772 +v -0.022067 0.022828 0.032585 +v -0.011817 -0.035438 0.022532 +v 0.009216 0.022045 -0.019207 +v 0.022792 0.006288 0.019431 +v -0.018540 -0.006597 -0.013980 +v 0.026320 -0.019828 0.018823 +v -0.011702 -0.002060 0.040348 +v 0.008842 0.013537 -0.042857 +v 0.012892 0.024180 0.005327 +v 0.017867 -0.026140 -0.012570 +v -0.022800 0.012207 0.002494 +v -0.010165 -0.000475 -0.048785 +v -0.007126 0.039435 0.028147 +v 0.007323 -0.026899 0.027289 +v 0.005868 -0.031365 0.005090 +v 0.005697 0.008598 0.034702 +v -0.015613 -0.024760 0.004743 +v 0.001855 -0.015267 -0.023104 +v 0.016020 0.002813 -0.026606 +v -0.003077 0.029350 -0.033819 +v -0.010541 0.021370 -0.015086 +v -0.012604 -0.017956 0.029990 +v -0.013116 -0.008399 -0.031824 +v -0.023441 0.004937 0.028665 +v -0.017509 0.023856 0.014987 +v 0.023352 -0.017312 0.001649 +v -0.000560 -0.046793 0.015474 +v -0.005081 0.023391 0.035041 +v 0.000197 0.028993 0.015796 +v -0.007436 0.016330 -0.047288 +v 0.017232 0.014286 -0.007038 +v 0.024355 -0.007047 0.029000 +v 0.004538 0.030912 -0.006649 +v 0.017515 -0.012137 -0.020438 +v -0.020668 0.009100 -0.014117 +v 0.021193 -0.031175 0.009464 +v 0.017650 0.021548 0.019895 +v 0.003695 0.004308 -0.054136 +v -0.000335 -0.019741 0.038831 +v -0.021288 -0.002912 0.001340 +v 0.023516 -0.003174 0.007796 +v -0.004504 -0.017642 -0.039623 +v -0.015210 -0.020588 -0.009827 +v 0.019632 0.013025 0.032089 +v -0.007058 -0.035658 0.008984 +v -0.020148 0.024835 -0.004524 +v -0.011927 0.011286 0.034687 +v 0.020133 -0.031245 0.023655 +v 0.020184 0.010891 0.005879 +v -0.017700 -0.022439 0.018021 +v 0.001663 -0.002168 0.042348 +v -0.023363 0.006232 0.015247 +v 0.008355 0.021798 -0.032434 +v -0.017958 0.003164 -0.025554 +v 0.017004 -0.018081 0.028417 +v -0.021408 -0.008017 0.029333 +v 0.012053 0.000964 -0.041874 +v 0.005176 0.036473 0.025638 +v 0.006957 -0.031135 -0.007916 +v -0.011749 -0.016698 -0.022160 +v -0.002280 0.020155 -0.025059 +v -0.009179 0.008959 -0.057363 +v 0.014816 0.000177 0.032873 +v 0.010050 -0.007441 -0.030649 +v -0.003208 -0.026065 -0.001816 +v 0.000401 -0.036466 0.023748 +v -0.017519 0.031566 0.025331 +v -0.012885 0.025229 -0.027974 +v -0.023686 0.015608 0.022901 +v 0.013234 -0.023472 -0.000847 +v -0.014695 0.003010 -0.038135 +v -0.007551 0.023733 0.008290 +v 0.015840 0.011488 -0.018612 +v 0.000937 -0.005217 -0.046628 +v 0.021620 -0.014782 -0.009787 +v 0.006945 -0.023602 -0.016995 +v 0.008380 -0.041513 0.010555 +v -0.019368 -0.013925 0.005185 +v -0.009942 -0.013382 0.040294 +v 0.002195 0.015588 -0.053449 +v 0.001178 0.021772 -0.041777 +v 0.001429 0.029574 0.004084 +v -0.003512 -0.024059 0.028328 +v 0.013346 0.024470 -0.007361 +v -0.006356 0.028138 -0.007647 +v 0.006170 0.019479 0.034832 +v -0.011375 0.021709 -0.038829 +v 0.025382 -0.009201 0.017644 +v -0.017109 0.015926 -0.021544 +v 0.012538 0.010336 -0.033330 +v -0.002833 -0.010802 -0.031500 +v 0.010900 0.029561 0.018603 +v -0.000971 0.033590 0.034401 +v 0.010887 0.003494 0.042320 +v -0.010582 -0.009155 -0.041927 +v -0.004486 0.006158 0.041295 +v -0.003982 -0.022963 -0.018122 +v -0.012314 0.031750 0.034285 +v -0.000139 0.023946 -0.014777 +v -0.016819 0.021152 0.004503 +v 0.018664 0.001968 -0.016135 +v 0.007702 -0.017992 0.032373 +v -0.008431 0.030954 0.020995 +v -0.022884 0.015869 0.012209 +v 0.023410 0.003509 0.029357 +v -0.020933 0.001564 -0.007418 +v 0.009991 -0.037278 0.022998 +v 0.023543 -0.037648 0.016228 +v -0.019920 0.018496 -0.012179 +v -0.019057 -0.011121 -0.003993 +v -0.015075 -0.026772 0.026164 +v -0.021315 0.013369 0.033633 +v -0.013920 -0.031404 0.014238 +v -0.012104 -0.007863 0.032890 +v 0.020083 0.006046 -0.003479 +v -0.016350 -0.008314 -0.022969 +v -0.014664 0.012168 -0.041622 +v 0.004628 -0.015575 -0.034704 +v -0.001744 0.014259 0.035292 +v 0.017701 0.022023 0.029707 +v -0.020143 -0.014831 0.023054 +v 0.015532 -0.009166 0.031216 +v 0.003356 -0.011132 0.040685 +v 0.020039 0.014341 0.014446 +v -0.008036 -0.041613 0.016312 +v -0.015781 0.002601 0.033650 +v 0.025290 -0.015721 0.010779 +v 0.007574 -0.045248 0.019424 +v -0.022734 -0.001375 0.021547 +v 0.012355 0.016728 -0.026287 +v 0.023118 -0.008787 -0.000399 +v -0.002057 0.034630 -0.002271 +v 0.025785 -0.028189 0.016415 +v 0.013324 -0.034661 0.008323 +v 0.017377 0.017566 0.001099 +v 0.025518 -0.015740 0.026427 +v -0.021953 0.024033 0.023759 +v 0.020612 0.014316 0.023617 +v -0.012030 0.008808 -0.049261 +v -0.013644 0.022937 0.034675 +v 0.002917 0.026844 -0.028132 +v 0.003316 0.010471 -0.060411 +v -0.022448 0.000156 0.009373 +v 0.014621 -0.020122 -0.017516 +v 0.001148 -0.037444 0.008657 +v -0.021910 0.012583 -0.006567 +v 0.020029 -0.024988 0.003816 +v 0.007012 0.027276 0.010419 +v 0.005210 -0.024506 -0.002976 +v 0.016756 -0.005524 -0.025486 +v -0.012014 -0.024658 -0.003283 +v 0.024568 -0.001623 0.021248 +v 0.009011 0.006107 -0.048018 +v 0.002264 -0.030694 -0.014742 +v 0.009079 0.029864 0.000189 +v -0.004607 0.002574 -0.054060 +v -0.008790 -0.030126 0.003173 +v 0.014395 -0.001531 -0.034223 +v 0.016015 -0.003211 0.040197 +v 0.014528 0.018759 -0.013984 +v -0.004844 -0.007144 0.041305 +v 0.003696 0.007215 0.042823 +v 0.010196 -0.012253 -0.024141 +v -0.019587 -0.015484 0.013238 +v -0.019321 0.001659 -0.017721 +v -0.017388 -0.019116 -0.000871 +v 0.007404 0.035186 0.033232 +v 0.022372 0.004467 0.010145 +v 0.020153 -0.005801 -0.014587 +v -0.016319 -0.014094 -0.015566 +v 0.007156 0.026132 -0.012474 +v 0.022500 -0.023962 0.025656 +v -0.016816 0.028615 0.001945 +v -0.010398 0.018089 -0.025751 +v -0.011141 -0.024601 -0.015234 +v 0.016489 0.022459 0.012173 +v 0.012232 0.031657 0.026093 +v -0.008238 0.004087 0.034783 +v 0.018917 -0.019831 -0.004575 +v 0.000266 -0.012632 -0.043024 +v 0.024803 -0.023656 0.009715 +v 0.014838 -0.025256 0.026653 +v -0.006428 -0.031079 0.025882 +v 0.008482 -0.004902 -0.045329 +v -0.004690 -0.017683 0.032377 +v -0.013544 0.029519 -0.004877 +v -0.001322 0.034069 0.022515 +v 0.012253 0.012915 0.033882 +v -0.009847 0.026389 0.015114 +v 0.003511 0.026614 -0.036284 +v 0.018150 0.008106 -0.011777 +v 0.004211 0.026760 0.034720 +v 0.016253 -0.040794 0.011476 +v -0.000499 -0.030750 -0.007360 +v 0.008613 -0.004757 0.041401 +v -0.022113 0.005298 -0.001074 +v 0.001718 0.039814 0.031360 +v -0.001740 -0.031802 0.004674 +v -0.003484 0.013573 -0.058187 +v 0.013278 -0.006737 -0.039573 +v -0.014421 0.036988 0.029227 +v 0.011427 -0.029343 -0.014018 +v -0.005422 0.026544 -0.026803 +v -0.015811 -0.000731 -0.031987 +v 0.005355 0.020573 -0.025406 +v 0.017273 -0.037829 0.021647 +v -0.021563 0.018541 -0.000772 +v -0.016202 0.021847 -0.033496 +v -0.019214 0.030399 0.032771 +v 0.013243 -0.027730 -0.007156 +v 0.004418 0.017844 -0.047003 +v -0.023617 0.008153 0.022257 +v -0.015130 0.023702 -0.010103 +v 0.003535 -0.010274 -0.027958 +v -0.005068 -0.014608 -0.024732 +v -0.010330 0.027183 -0.034394 +v -0.019401 0.008825 -0.021114 +v 0.022273 -0.001800 0.000518 +v -0.021189 -0.006547 0.007452 +v -0.012473 -0.002445 -0.042305 +v -0.008826 -0.012595 -0.035377 +v 0.010644 -0.017324 0.038633 +v 0.024315 -0.009982 0.006926 +v -0.018704 -0.014369 0.029795 +v -0.004617 0.023788 -0.038604 +v 0.007808 0.019548 -0.039628 +v -0.016952 0.007746 -0.031972 +v -0.016610 -0.024622 0.011566 +v -0.002314 0.006684 -0.059367 +v 0.005411 -0.000192 -0.049244 +v -0.001887 -0.042373 0.021202 +v 0.016220 0.007174 0.032910 +v -0.018313 -0.020772 0.026234 +v -0.004770 0.020738 -0.018652 +v 0.003182 -0.021722 0.028789 +v -0.020709 -0.001821 0.032144 +v 0.012194 -0.029069 0.004337 +v 0.011784 -0.046408 0.013760 +v -0.001145 0.025607 0.009253 +v -0.007379 -0.027726 -0.007100 +v -0.022804 0.006277 0.005696 +v 0.021479 0.004297 0.003263 +v -0.006283 -0.006355 -0.046280 +v -0.009266 0.017881 0.035106 +v 0.010526 -0.012478 -0.035295 +v -0.019995 -0.005005 -0.006632 +v 0.014459 0.009286 -0.026919 +v 0.011210 0.007387 -0.040359 +v -0.001100 0.007563 0.035748 +v 0.012687 0.020001 0.033972 +v -0.002939 -0.041993 0.011646 +v -0.016356 0.027762 0.020120 +v 0.004513 0.034445 -0.000608 +v -0.003031 -0.013953 0.040037 +v 0.008558 -0.017315 -0.020425 +v -0.007694 0.036259 0.033960 +v -0.005329 -0.000123 0.042560 +v 0.001286 -0.029037 0.026480 +v -0.015808 0.016856 0.034581 +v -0.015277 -0.029253 0.020228 +v -0.005235 0.030125 0.004076 +v 0.020704 -0.012458 0.029150 +v 0.015764 0.026194 0.023915 +v -0.013469 0.006022 -0.043672 +v 0.006784 0.012226 -0.050522 +v -0.008495 0.013611 -0.053025 +v 0.005233 -0.046690 0.012799 +v 0.022000 -0.008794 -0.006999 +v 0.014322 0.023744 -0.000870 +v 0.018126 0.017761 0.007412 +v 0.020009 -0.019049 -0.014217 +v -0.017334 -0.014633 -0.009236 +v -0.018144 -0.019314 0.008299 +v -0.022049 0.020872 0.018256 +v 0.023706 0.000884 0.015496 +v -0.021651 -0.008332 0.023013 +v 0.010621 0.004704 0.035357 +v 0.005845 0.032606 0.020677 +v -0.006011 -0.037617 0.023321 +v 0.000017 0.027623 -0.009733 +v -0.013493 0.023256 0.010079 +v -0.023692 0.011751 0.027771 +v 0.025010 -0.033204 0.020364 +v 0.020515 -0.002624 0.031028 +v -0.017815 0.012679 -0.026763 +v -0.000835 -0.000454 -0.050218 +v 0.011073 -0.031280 0.025145 +v -0.009445 -0.013399 0.032639 +v 0.022386 0.008629 0.025123 +v -0.017803 -0.002412 -0.022139 +v 0.016872 0.005634 -0.020715 +v 0.002095 -0.020133 -0.019390 +v 0.018648 -0.003243 -0.020148 +v -0.013598 -0.029732 0.008375 +v 0.014216 0.004471 -0.032189 +v -0.012155 0.025370 0.004106 +v -0.005908 0.030058 0.034660 +v -0.011490 -0.012640 -0.026659 +v -0.022452 -0.002008 0.015301 +v 0.010803 0.016110 -0.033212 +v -0.023448 0.018214 0.028978 +v -0.011382 -0.001839 0.034357 +v -0.019516 0.007287 0.033739 +v -0.009499 -0.024046 0.028208 +v -0.021539 0.016654 0.006297 +v 0.022668 -0.014154 -0.003375 +v -0.013859 -0.019365 -0.016888 +v 0.013630 0.017635 -0.019766 +v 0.025848 -0.009245 0.023571 +v 0.001432 0.021557 -0.019984 +v -0.006738 -0.018315 0.038492 +v 0.012288 -0.014112 0.031561 +v -0.023327 0.010304 0.009998 +v -0.019367 0.020653 0.010375 +v 0.004900 -0.040083 0.022012 +v -0.011160 -0.036738 0.015227 +v 0.005477 -0.020545 0.037189 +v -0.001227 -0.016141 -0.034591 +v 0.006188 0.026177 0.004624 +v -0.007302 0.032526 -0.003890 +v 0.020660 -0.011727 -0.014686 +v -0.012161 -0.007866 0.040920 +v -0.004842 0.019494 -0.043104 +v -0.011986 0.016976 -0.043603 +v 0.002365 -0.017591 -0.039703 +v -0.015576 0.016991 -0.038456 +v 0.012191 0.026677 0.013049 +v -0.020332 -0.008636 0.001854 +v -0.012111 0.018360 -0.019800 +v -0.005807 -0.012196 -0.043207 +v 0.018730 0.012431 -0.001239 +v 0.001476 -0.028167 0.001496 +v 0.024558 -0.006416 0.012631 +v 0.007051 -0.036388 0.008239 +v 0.010501 -0.021196 0.028514 +v -0.021632 0.027711 0.028319 +v -0.011766 0.034019 0.024507 +v -0.010119 0.003996 -0.052363 +v 0.025422 -0.027933 0.022558 +v 0.015681 0.019559 -0.005592 +v -0.019849 -0.000979 -0.012366 +v -0.006292 0.024006 -0.012424 +v -0.021662 0.018630 -0.006798 +v 0.004244 0.014163 0.034973 +v -0.013703 -0.004019 -0.037022 +v -0.020120 0.014182 -0.016456 +v -0.001255 0.038277 0.026237 +v -0.001986 0.017499 -0.047982 +v 0.009739 0.028748 -0.006931 +v 0.000804 -0.025440 -0.016568 +v 0.005877 -0.033339 0.024698 +v -0.006084 0.009904 0.034877 +v -0.023623 0.012633 0.016685 +v 0.025833 -0.014792 0.016233 +v -0.015787 0.019665 -0.015689 +v 0.000851 0.022380 0.035122 +v -0.015082 0.018499 -0.029266 +v -0.021301 0.007035 -0.009058 +v 0.019744 -0.036550 0.011244 +v -0.012025 -0.025148 -0.008746 +v 0.018742 0.019451 0.024985 +v 0.016290 0.013608 -0.013423 +v 0.007169 -0.027165 0.001371 +v -0.016070 -0.005053 -0.027338 +v 0.024882 -0.002120 0.026732 +v 0.015708 -0.005216 0.035145 +v 0.023993 -0.032734 0.013850 +v -0.022882 -0.000719 0.027298 +v 0.011850 0.023505 -0.013131 +v 0.020170 -0.042130 0.014971 +v 0.015105 0.025995 0.018195 +v -0.000441 0.008491 -0.064064 +v -0.001023 0.027832 0.034886 +v -0.000239 0.002781 0.042920 +v -0.008019 -0.019969 -0.020217 +v 0.006527 0.029600 0.015564 +v 0.022021 0.008564 0.030428 +v -0.016035 0.010865 -0.036515 +v 0.005783 0.009084 -0.055151 +v 0.019909 0.002198 -0.009550 +v 0.003015 -0.042332 0.010834 +v 0.023626 0.003644 0.023959 +v -0.016122 -0.004467 0.032646 +v 0.007720 -0.016144 -0.038974 +v 0.024636 -0.018799 0.006510 +v -0.006294 -0.027530 -0.015896 +v 0.019793 -0.021451 -0.009474 +v 0.013707 -0.024900 -0.015596 +v -0.020337 -0.013451 0.017994 +v 0.005176 -0.015916 0.039691 +v 0.009874 0.000564 -0.046664 +v -0.019127 0.024109 0.000728 +v 0.013514 -0.015739 -0.020469 +v 0.026140 -0.020408 0.024225 +v -0.004074 0.039658 0.032425 +v -0.008174 -0.010792 -0.030550 +v -0.004064 0.027150 0.013470 +v -0.007396 0.029518 -0.030831 +v 0.021548 0.009468 0.015020 +v -0.001076 0.029875 -0.029148 +v -0.009794 -0.028452 -0.011934 +v 0.014536 0.013267 -0.023242 +v -0.001828 0.031059 -0.005901 +v -0.001623 0.033528 0.002967 +v -0.005912 0.035335 0.024267 +v 0.003668 -0.008851 -0.044384 +v -0.012617 -0.031100 0.025247 +v 0.000782 -0.019929 0.033901 +v -0.022167 0.001912 0.003240 +v 0.006301 -0.000193 0.042320 +v -0.008259 -0.027048 -0.000779 +v -0.018538 -0.009756 -0.009589 +v 0.015494 0.026864 0.029940 +v -0.003162 0.015380 -0.052384 +v 0.016184 -0.023731 -0.006442 +v 0.008485 0.023898 0.034386 +v 0.014054 0.001171 0.037718 +v 0.006156 -0.010236 -0.032217 +v 0.017311 0.018174 0.032848 +v -0.018838 -0.013995 0.000060 +v -0.015257 -0.013574 -0.020531 +v 0.020325 -0.020980 0.000207 +v -0.021262 0.013702 -0.011365 +v 0.015867 -0.001791 -0.029488 +v 0.001742 -0.045377 0.019660 +v 0.023298 -0.005651 0.003512 +v -0.023276 0.003751 0.020019 +v 0.017895 -0.016313 -0.017753 +v -0.017398 -0.024078 0.022672 +v 0.021419 0.011311 0.019601 +v 0.010143 -0.024339 -0.004598 +v 0.004683 0.023838 -0.016076 +v 0.013175 0.002340 -0.037270 +v -0.011459 0.013638 -0.048447 +v -0.017899 0.025359 0.034248 +v -0.017230 -0.008854 -0.018144 +v 0.025770 -0.020689 0.013499 +v 0.009590 0.035374 0.028850 +v -0.008388 0.003285 0.040584 +v 0.001167 -0.026315 -0.005045 +v -0.004949 0.029321 0.017746 +v -0.000537 -0.012437 -0.026268 +v 0.014426 -0.009913 -0.024717 +v 0.017470 0.001056 -0.022255 +v -0.015765 -0.010857 0.031422 +v 0.025142 -0.011310 0.012813 +v 0.026323 -0.015191 0.021672 +v 0.007171 -0.031443 -0.013043 +v 0.000297 -0.007398 0.041006 +v -0.004386 0.025454 0.004983 +v 0.010394 0.012799 -0.038347 +v -0.015524 -0.021345 -0.005075 +v 0.024043 -0.012704 0.002886 +v 0.017674 -0.028797 0.005595 +v 0.001400 0.014300 -0.058205 +v -0.001780 -0.017885 -0.021361 +v -0.020473 -0.011279 0.011103 +v -0.009190 0.026564 0.034831 +v -0.005353 0.010052 -0.060925 +v -0.016241 0.034217 0.032691 +v -0.005680 -0.002004 -0.049515 +v 0.006120 0.025966 -0.031586 +v -0.004300 -0.044759 0.017648 +v -0.016981 0.011487 0.034281 +v 0.013910 -0.014444 0.036701 +v -0.008695 -0.014489 -0.039746 +v 0.018718 0.009824 -0.006035 +v 0.019301 0.017078 0.018266 +v 0.021609 -0.018646 0.027373 +v -0.004540 0.018318 0.035137 +v -0.010398 -0.039045 0.019795 +v 0.024676 -0.004210 0.017281 +v -0.007989 0.022090 -0.026526 +v -0.015953 -0.026946 0.015631 +v -0.013269 -0.033701 0.018383 +v 0.016475 -0.007835 0.039150 +v -0.020541 0.018581 0.033966 +v 0.001631 -0.012473 -0.032793 +v -0.012682 -0.026563 0.001521 +v -0.002357 -0.008549 -0.044880 +v -0.005877 0.034577 0.000646 +v 0.009682 0.020026 -0.023663 +v -0.018095 0.008034 -0.027306 +v 0.008463 -0.012598 0.040037 +v -0.010996 0.025661 -0.009105 +v 0.026315 -0.024485 0.019272 +v 0.012188 -0.007847 -0.035168 +v -0.012287 -0.008447 -0.036641 +v -0.018169 -0.020320 0.013897 +v -0.000873 -0.032932 -0.011456 +v -0.006805 -0.039433 0.012066 +v -0.017554 -0.016549 -0.004999 +v 0.020418 -0.040483 0.019473 +v 0.016248 0.021124 0.004325 +v 0.012067 0.027527 -0.003101 +v -0.019119 -0.018355 0.020206 +v -0.014640 0.031893 -0.000515 +v -0.022089 0.002640 0.032461 +v 0.018495 0.017989 0.012029 +v -0.000785 0.024237 -0.026670 +v 0.019769 0.016873 0.028690 +v -0.006321 0.018821 -0.023242 +v 0.012265 -0.043442 0.020073 +v 0.020254 0.008591 0.001872 +v -0.018068 -0.018104 0.003716 +v 0.006687 0.007026 0.038927 +v 0.015745 -0.025875 0.002352 +v -0.012809 0.006773 0.034323 +v -0.011773 -0.033469 0.010720 +v 0.019662 0.003947 0.031997 +v 0.008495 0.010664 -0.046559 +v -0.006998 -0.020408 0.029454 +v -0.018013 0.028676 -0.003212 +v 0.020786 0.001735 -0.005075 +v 0.008663 0.015656 0.034548 +v -0.023041 0.005090 0.010096 +v 0.005319 0.031154 0.034216 +v -0.015291 -0.023082 -0.000083 +v 0.003271 0.025928 0.008191 +v 0.001735 0.029503 -0.033267 +v 0.019421 -0.007753 -0.018612 +v -0.012150 0.036473 0.033167 +v 0.021670 -0.036478 0.021171 +v -0.003607 0.014360 -0.062878 +v -0.021393 0.000715 -0.003003 +v 0.000886 0.031585 0.019453 +v 0.014846 -0.034460 0.023418 +v -0.002102 -0.029002 -0.015102 +v 0.003516 -0.032470 -0.010544 +v 0.005721 0.038273 0.029989 +v -0.000897 -0.019780 0.029735 +v 0.001191 0.017654 0.035233 +v -0.023270 0.008737 0.031069 +v -0.000141 0.024857 -0.038198 +v 0.007063 0.023438 -0.036398 +v -0.006390 0.004980 -0.057391 +v 0.014416 0.024138 0.033316 +v 0.012329 0.032375 0.030708 +v 0.022024 -0.027188 0.007634 +v 0.008141 0.031812 -0.003704 +v -0.005577 -0.016176 -0.035504 +v 0.005863 -0.027625 -0.015452 +v -0.023338 0.019857 0.024364 +v -0.005979 -0.032830 0.005493 +v -0.014301 0.025898 -0.032908 +v -0.020235 0.004446 -0.014405 +v -0.022056 0.008746 -0.003850 +v -0.014417 -0.021768 0.028671 +v -0.019662 0.024511 0.018998 +v -0.022241 -0.005184 0.026049 +v 0.002193 -0.033435 0.006383 +v 0.008571 0.033621 0.023990 +v 0.001754 0.033476 -0.004153 +v 0.021286 0.008722 0.009904 +v 0.018595 -0.022361 0.026893 +v -0.008338 -0.004579 0.041990 +v -0.021847 -0.004693 0.011886 +v -0.010320 -0.005068 -0.045154 +v 0.007218 0.006318 -0.052009 +v -0.013735 0.030664 0.022078 +v -0.014823 0.016103 -0.025629 +v 0.004729 -0.014721 -0.041981 +v 0.017607 -0.022645 -0.015160 +v 0.024562 -0.028108 0.012235 +v 0.025285 -0.011504 0.027407 +v -0.023078 0.022448 0.028117 +v -0.014609 -0.009120 -0.027508 +v -0.000369 0.002578 -0.053250 +v 0.002322 0.006588 -0.057528 +v 0.018820 0.014509 0.003972 +v -0.012892 0.029819 0.003263 +v 0.005655 -0.012561 -0.024983 +v 0.004549 -0.006851 0.041446 +v 0.012668 -0.006135 0.040944 +v 0.007770 -0.009597 -0.027579 +v -0.006142 -0.041738 0.021039 +v 0.011302 -0.030675 -0.009926 +v -0.018938 0.032837 0.029236 +v 0.002493 0.036093 0.033919 +v -0.022429 0.014391 -0.001473 +v 0.020029 -0.001918 -0.012757 +v 0.016335 -0.044902 0.014183 +v -0.019857 0.028026 0.024431 +v 0.013538 -0.005088 -0.031444 +v -0.018695 -0.002562 -0.017424 +v -0.012093 -0.005161 0.037428 +v -0.016488 0.026119 -0.006846 +v 0.013079 -0.000523 0.041761 +v -0.001730 -0.033042 0.025160 +v -0.009068 -0.015351 0.036420 +v 0.021209 0.012905 0.028061 +v 0.005509 0.019594 -0.043271 +v 0.009959 0.019178 -0.028823 +v 0.012161 -0.003953 -0.042601 +v 0.022668 0.005371 0.015193 +v 0.022315 -0.004915 -0.002366 +v 0.011216 0.025765 0.008890 +v 0.021072 -0.006458 -0.010496 +v -0.010604 0.037329 0.026934 +v 0.022461 0.000352 0.004452 +v 0.012316 -0.011605 -0.039408 +v -0.018964 0.022483 -0.008787 +v 0.011154 -0.038434 0.009703 +v -0.011806 -0.009543 0.036761 +v -0.003070 -0.037448 0.008934 +v 0.019553 0.014104 0.008976 +v -0.006210 0.026426 -0.035717 +v -0.004918 -0.031212 -0.008558 +v -0.012117 0.004813 -0.047479 +v 0.013473 -0.002247 -0.038275 +v -0.010603 0.008102 -0.053150 +v -0.010289 -0.031851 0.006893 +v -0.021767 -0.002689 0.005899 +v 0.001601 0.010663 0.034929 +v 0.015835 0.017306 -0.009581 +v 0.019482 -0.008139 0.030290 +v -0.023161 0.016890 0.016258 +v -0.001082 0.011591 -0.061019 +v 0.019786 -0.027100 0.025152 +v 0.010682 -0.021503 -0.017533 +v -0.020267 -0.006758 -0.001873 +v -0.000655 0.007156 0.042611 +v -0.000052 0.025780 0.004963 +v -0.002718 -0.027661 -0.005671 +v -0.022015 -0.005538 0.018890 +v -0.007576 0.012779 -0.057080 +v 0.012482 0.020971 -0.016886 +v 0.002373 0.027561 0.012571 +v 0.004253 0.023348 -0.039439 +v -0.013317 0.010198 -0.045585 +v 0.011033 0.008529 0.033846 +v -0.008329 0.026919 0.004132 +v 0.011546 0.025756 0.001761 +v 0.012484 0.014124 -0.029480 +v 0.007911 -0.047282 0.015866 +v 0.005704 0.029896 0.002960 +v 0.012828 -0.017468 0.029264 +v -0.015874 -0.017276 -0.013023 +v 0.001156 -0.015147 0.039604 +v 0.012828 0.006766 -0.035312 +v 0.017623 -0.032768 0.008298 +v 0.010932 -0.007821 -0.042911 +v 0.005939 -0.027482 -0.005649 +v 0.013364 0.029391 0.022913 +v 0.017264 0.016053 -0.003379 +v -0.013694 0.024758 0.013848 +v -0.008829 -0.027977 0.026936 +v 0.022975 -0.021842 0.004395 +v -0.004031 -0.029544 0.002210 +v -0.010234 0.000636 0.037710 +v -0.023205 0.002352 0.023815 +v 0.012654 -0.042641 0.011452 +v 0.007273 0.005336 0.042952 +v 0.017228 0.007430 -0.017111 +v -0.011358 0.028143 -0.030313 +v 0.003436 -0.047717 0.016261 +v -0.004218 -0.011811 -0.027778 +v -0.008364 -0.023176 -0.017779 +v -0.022944 0.001962 0.014881 +v -0.019712 0.005808 -0.018139 +v -0.008700 0.019417 -0.042028 +v 0.023572 -0.000521 0.011756 +v 0.015358 -0.029019 -0.011398 +v 0.015631 0.022520 0.008014 +v 0.005222 0.023476 -0.028598 +v -0.017238 0.004234 -0.029325 +v 0.025207 -0.004715 0.023733 +v -0.011653 0.028760 0.019273 +v -0.019435 0.012982 -0.020232 +v 0.010593 0.005411 -0.043752 +v 0.019395 0.006208 -0.007528 +v -0.003992 0.026514 -0.010389 +v -0.002141 -0.003201 0.041942 +v 0.004797 0.012823 -0.056008 +v 0.021398 0.002407 -0.000213 +v -0.021227 -0.009784 0.019178 +v -0.008873 0.022269 0.035018 +v 0.010597 -0.032082 0.006334 +v 0.007134 0.014663 -0.047432 +v -0.023692 0.011838 0.020554 +v -0.006976 0.013749 0.035035 +v 0.016495 -0.030121 0.024701 +v -0.003799 -0.027792 0.027082 +v 0.005343 0.022063 -0.020006 +v -0.020898 -0.011618 0.027820 +v 0.016704 -0.021752 -0.001944 +v 0.009253 0.018722 -0.035718 +v 0.014547 0.021011 -0.009301 +v 0.004472 -0.003555 -0.047067 +v 0.001416 0.020218 -0.023748 +v -0.016175 0.003098 -0.032925 +v -0.011753 0.022274 0.006707 +v -0.004742 0.006122 0.035804 +v -0.014869 -0.014584 0.030620 +v -0.008622 0.020147 -0.018288 +v 0.015688 -0.013071 0.029933 +v 0.015506 0.009569 -0.022424 +v -0.013505 0.002544 -0.041915 +v -0.016809 -0.018745 0.029218 +v -0.008032 -0.034410 0.024662 +v 0.008914 0.023805 -0.015664 +v -0.006397 -0.010666 0.040787 +v -0.012015 0.001216 -0.045826 +v 0.018053 -0.007260 -0.022271 +v 0.000785 0.035111 0.000380 +v 0.007680 0.002865 -0.049930 +v 0.016876 -0.003732 0.031726 +v 0.021356 0.006666 0.006309 +v -0.000911 -0.016118 -0.041869 +v -0.004746 0.032079 0.021076 +v -0.016034 0.028730 0.034170 +v -0.023095 0.010923 0.006205 +v -0.009613 0.029259 -0.005927 +v 0.015630 0.014765 0.033454 +v 0.009394 -0.041220 0.021343 +v -0.021315 0.026590 0.032401 +v -0.019706 0.019999 0.002252 +v -0.013658 -0.023187 -0.012176 +v -0.012297 -0.006345 -0.039840 +v 0.001811 0.035765 0.023970 +v 0.007874 0.027728 0.034237 +v -0.010854 0.032779 -0.002466 +v -0.012334 0.021507 -0.027351 +v -0.014648 0.007251 -0.040261 +v 0.012990 -0.007366 -0.028223 +v 0.014966 -0.011140 0.035120 +v 0.017282 0.022996 0.025324 +v -0.015093 -0.028476 0.012101 +v -0.018923 0.003465 -0.021040 +v 0.016864 -0.000830 -0.025952 +v -0.014818 -0.004247 -0.033013 +v 0.025846 -0.024323 0.014589 +v 0.008922 -0.024642 -0.000855 +v -0.016777 -0.023169 0.007984 +v -0.014460 -0.012223 -0.023984 +v 0.024599 -0.014800 0.005992 +v -0.011826 0.023197 -0.011885 +v -0.003066 -0.019963 0.036217 +v 0.009140 -0.008945 0.040768 +v 0.002286 -0.025257 0.027773 +v 0.016735 0.022959 0.015917 +v 0.023885 0.001741 0.019655 +v 0.004302 0.028385 -0.009445 +v 0.007601 0.011854 0.034557 +v 0.001656 0.007747 0.038316 +v 0.006608 -0.023404 0.028512 +v -0.018016 0.021358 0.034329 +v 0.000952 0.018924 -0.045984 +v 0.001383 -0.045290 0.012499 +v -0.007120 0.025420 0.012111 +v -0.018525 -0.007819 0.031740 +v -0.020779 0.021114 0.014726 +v 0.002132 0.039111 0.027694 +v -0.021478 0.021545 -0.003308 +v -0.023537 0.014893 0.030706 +v -0.013767 -0.000782 -0.039210 +v -0.011932 0.015259 0.034928 +v 0.003357 -0.030324 -0.007287 +v -0.017127 -0.000197 -0.026976 +v 0.003735 0.003486 0.043045 +v 0.015108 0.014908 -0.017306 +v 0.018394 0.005186 -0.014078 +v 0.023243 -0.000075 0.030352 +v 0.001681 0.016977 -0.050034 +v 0.003065 0.033229 0.002640 +v -0.014090 0.026666 0.017383 +v 0.013243 -0.046157 0.017167 +v -0.008494 -0.016381 0.030640 +v -0.015482 0.034588 0.026599 +v -0.014873 0.021206 -0.036901 +v -0.023571 0.007481 0.025906 +v 0.011410 -0.026505 0.001773 +v 0.021339 -0.017580 -0.002906 +v 0.016058 0.020476 -0.000875 +v -0.008715 0.024119 -0.037156 +v 0.007326 -0.008802 -0.043854 +v -0.015198 0.022412 -0.029988 +v -0.010699 -0.011195 -0.038852 +v -0.011566 0.001811 0.033856 +v 0.017041 -0.026686 -0.009017 +v 0.021515 -0.016234 -0.006402 +v 0.009638 -0.028140 -0.006523 +v -0.001317 0.037228 0.033962 +v -0.008075 0.000653 -0.051591 +v 0.008431 -0.045106 0.011919 +v 0.010902 0.025766 -0.010393 +v 0.010164 -0.025872 -0.015655 +v -0.023076 0.013862 0.009123 +v 0.009641 0.031270 0.033613 +v -0.020735 -0.003367 -0.003180 +v 0.014491 0.003945 0.032904 +v -0.016069 0.021499 0.008159 +v 0.004899 -0.030047 0.025966 +v 0.019418 0.017362 0.021977 +v -0.002961 0.040166 0.028863 +v -0.012294 -0.028745 0.004429 +v -0.019454 -0.017307 0.026476 +v -0.019370 -0.005159 -0.010723 +v -0.015696 0.005777 -0.035968 +v -0.017620 -0.005431 -0.020091 +v 0.011834 0.003977 0.038723 +v 0.013876 0.008072 -0.030312 +v -0.009420 0.025950 -0.027099 +v -0.002688 -0.004993 -0.046933 +v 0.014236 -0.021851 0.027799 +v -0.003620 0.009714 -0.065352 +v 0.006811 -0.020115 -0.018888 +v 0.004717 -0.019594 0.033698 +v -0.023531 0.007927 0.018458 +v 0.014634 -0.031486 0.006691 +v -0.002291 -0.039080 0.022666 +v 0.009999 0.028577 0.015233 +v -0.016604 0.018255 -0.033742 +v -0.004005 0.022737 -0.015740 +v 0.025924 -0.011717 0.020181 +v 0.002673 0.026275 -0.011884 +v 0.005187 -0.039125 0.009679 +v -0.019665 -0.013934 0.008805 +v 0.004020 0.030737 0.017891 +v 0.021577 -0.011195 -0.010107 +v -0.009367 -0.000423 0.042545 +v -0.015475 -0.026466 0.008609 +v 0.008820 -0.018855 0.035936 +v -0.009720 -0.036293 0.011585 +v -0.004731 -0.013253 -0.033318 +v -0.021499 0.005043 -0.006078 +v -0.010675 0.038620 0.030700 +v -0.006878 -0.025949 -0.003890 +v -0.004801 0.034210 0.034378 +v -0.000075 0.027522 -0.035829 +v 0.000332 -0.026055 -0.001140 +v -0.002160 0.020379 -0.021512 +v -0.003170 -0.044425 0.014230 +v -0.014649 -0.000946 0.033284 +v 0.025624 -0.024567 0.023669 +v -0.015931 0.017847 -0.018805 +v 0.018098 0.019647 0.015138 +v 0.009944 0.010021 -0.042365 +v -0.012516 0.027761 0.034577 +v -0.013352 0.013699 -0.045037 +v -0.020123 0.009752 -0.017775 +v -0.000019 -0.040466 0.010073 +v -0.000004 -0.010228 -0.028968 +v -0.006987 -0.017336 -0.022327 +v 0.015106 0.001019 -0.031479 +v 0.010126 0.031377 0.021524 +v 0.002475 0.022108 -0.026739 +v 0.002379 0.000789 -0.050946 +v -0.022637 0.007436 0.002389 +v 0.020266 -0.015669 -0.015107 +v -0.018781 0.010156 -0.024531 +v 0.025330 -0.019281 0.010321 +v -0.021966 0.015916 0.002899 +v 0.002397 -0.019010 0.030932 +v 0.001651 -0.017468 -0.036080 +v -0.022168 -0.004333 0.029442 +v 0.009221 0.016005 -0.039086 +v 0.011032 -0.016344 0.033934 +v -0.017625 -0.011640 -0.012381 +v -0.017373 0.020851 -0.012555 +v -0.002294 0.021511 -0.041612 +v 0.004939 0.015755 -0.050148 +v -0.012674 0.023849 -0.036405 +v 0.025583 -0.031531 0.017337 +v -0.017040 -0.021370 0.004275 +v -0.016642 -0.025580 0.019046 +v 0.020956 -0.039037 0.013337 +v -0.008962 0.023621 0.004996 +v 0.018245 -0.034535 0.022763 +v -0.009303 0.008648 0.034667 +v -0.009572 -0.014876 -0.024847 +v 0.011313 -0.009740 -0.026351 +v 0.020902 -0.018445 -0.010769 +v 0.014990 -0.037279 0.009836 +v 0.019473 -0.002671 -0.016077 +v -0.014745 -0.016289 -0.018467 +v -0.023502 0.012610 0.013147 +v -0.001347 0.004954 -0.056547 +v -0.014819 -0.001273 -0.035263 +v 0.025380 -0.007232 0.020471 +v -0.001590 -0.018224 -0.037881 +v -0.000534 -0.022127 -0.018402 +v 0.017669 0.011621 -0.009168 +v -0.023691 0.015393 0.026333 +v 0.007398 0.016823 -0.044031 +v 0.017377 0.010405 0.033125 +v 0.023818 -0.003416 0.029802 +v -0.007456 0.039258 0.031699 +v 0.014015 -0.038895 0.021738 +v -0.023336 0.018222 0.020712 +v -0.020256 -0.010898 0.006525 +v 0.004704 -0.036366 0.023601 +v -0.015689 0.024198 0.003422 +v -0.022475 0.009567 -0.000558 +v 0.009459 0.025480 0.005317 +v -0.013048 0.018860 0.034741 +v -0.006436 0.015154 -0.050333 +v -0.007945 -0.009547 -0.044056 +v -0.017328 0.011696 -0.031090 +v -0.018434 -0.020844 0.022478 +v -0.020585 -0.011728 0.014465 +v -0.019262 -0.017356 0.016966 +v 0.013234 -0.028155 0.025920 +v 0.023710 -0.009337 0.003121 +v 0.006140 -0.020171 0.029423 +v -0.001347 -0.011035 0.040392 +v 0.018426 -0.014955 0.028925 +v -0.021144 -0.007884 0.010563 +v -0.003622 0.002895 0.042910 +v 0.024154 -0.006239 0.009276 +v -0.005381 0.013994 -0.054523 +v -0.018730 0.017247 -0.016151 +v 0.003613 -0.026111 -0.000334 +v 0.001869 -0.032184 0.025413 +v -0.003931 0.023029 -0.026519 +v 0.007495 -0.013844 -0.034306 +v -0.006934 -0.014880 0.040011 +v 0.022917 0.000429 0.007792 +v -0.010945 0.011315 -0.052192 +v -0.011974 -0.011383 0.031695 +v 0.018362 0.000003 -0.019182 +v 0.005054 -0.017837 -0.020637 +v 0.005088 -0.043282 0.020559 +v 0.013158 -0.022823 -0.004145 +v 0.022191 -0.012385 -0.007024 +v -0.001998 0.027361 -0.027117 +v -0.008283 0.028828 0.018397 +v -0.023135 0.019691 0.032043 +v -0.016101 0.006134 0.034191 +v -0.015077 -0.029488 0.023632 +v -0.023444 0.009031 0.013413 +v 0.010438 -0.024411 0.027597 +v -0.010333 -0.020622 0.029356 +v -0.000291 -0.023212 0.028560 +v -0.020662 0.003801 -0.011158 +v -0.014387 0.015661 -0.041696 +v 0.019585 -0.011258 -0.017808 +v -0.013735 -0.032810 0.021832 +v 0.015669 -0.011442 0.038408 +v -0.007275 0.021949 -0.015161 +v -0.006456 0.007051 -0.060041 +v 0.014699 0.028439 0.026112 +v 0.024124 0.001679 0.026685 +v 0.001590 -0.040007 0.022186 +v -0.008436 0.033054 0.034359 +v 0.023366 -0.012281 -0.000740 +v 0.000665 0.008545 -0.059980 +v 0.020806 0.011178 0.012058 +v -0.001851 0.014747 -0.055572 +v 0.013973 0.024863 0.010948 +v -0.021235 0.018118 0.009405 +v 0.010005 -0.034960 0.007942 +v -0.001981 0.007119 0.038887 +v -0.009438 0.018382 -0.022284 +v 0.006580 0.032430 0.001053 +v 0.007665 0.009070 -0.050230 +v 0.005421 0.022785 0.034812 +v -0.008343 0.031022 0.003493 +v 0.023050 0.006237 0.027273 +v -0.004539 -0.019418 -0.020460 +v -0.013378 0.017209 -0.022899 +v -0.021429 0.016420 -0.009536 +v -0.021007 -0.011530 0.023339 +v 0.016519 -0.041527 0.020229 +v 0.001333 -0.030833 0.004079 +v 0.002796 -0.009889 -0.031124 +v -0.023706 0.012416 0.023775 +v -0.011663 -0.019595 -0.019302 +v 0.003401 -0.018559 0.038940 +v -0.020331 -0.001314 -0.008849 +v -0.004824 0.026646 0.034894 +v -0.019071 0.019388 0.006082 +v -0.013549 0.018589 -0.040520 +v -0.018766 0.005923 -0.023180 +v -0.001327 0.021892 -0.018278 +v -0.016402 0.023070 0.012024 +v -0.019229 -0.008837 -0.006306 +v 0.023298 -0.024185 0.006881 +v 0.023751 -0.031256 0.022636 +v 0.010426 -0.014619 -0.038036 +v 0.011009 -0.001671 -0.044604 +v 0.017410 0.020153 0.009483 +v -0.018680 0.015386 0.034244 +v -0.004508 0.025493 0.010189 +v -0.018937 0.001945 0.033294 +v -0.022606 0.002780 0.007475 +v -0.003097 0.007897 -0.062307 +v 0.022279 -0.035384 0.012888 +v 0.010232 -0.034237 0.024140 +v 0.020531 0.006195 -0.000281 +o kp.002 +v 0.011087 -0.047503 0.016652 +v 0.011087 -0.046503 0.016652 +v 0.011087 -0.046503 0.015652 +v 0.011087 -0.047503 0.015652 +v 0.012087 -0.046503 0.015652 +v 0.012087 -0.047503 0.015652 +v 0.012087 -0.046503 0.016652 +v 0.012087 -0.047503 0.016652 +o kp.003 +v -0.007109 0.040177 0.028836 +v -0.007109 0.041177 0.028836 +v -0.007109 0.041177 0.027836 +v -0.007109 0.040177 0.027836 +v -0.006109 0.041177 0.027836 +v -0.006109 0.040177 0.027836 +v -0.006109 0.041177 0.028836 +v -0.006109 0.040177 0.028836 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/predict.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/predict.py new file mode 100644 index 0000000000000000000000000000000000000000..d0924f29fa35a28ec25a7da951076f47bcac5946 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/predict.py @@ -0,0 +1,214 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Pose estimation from keypoints using models. + +Given a 2D image or stereo pair, predict a set of 3D keypoints that +match the target examples. + +The should have a saved_model directory with + and +""" + +import glob +import os +import sys +import time +import warnings + +import matplotlib.pyplot as plt +import numpy as np +import skimage as ski +import tensorflow as tf + +from keypose import utils + +try: + import cv2 # pylint: disable=g-import-not-at-top +except ImportError as e: + print(e) + + +def image_as_ubyte(image): + with warnings.catch_warnings(): + warnings.simplefilter('ignore') + return ski.img_as_ubyte(image) + + +def draw_circle(image, uvd, color, size=2): + # Filled color circle. + cv2.circle(image, (int(uvd[0]), int(uvd[1])), size, tuple(color), -1) + # White outline. + cv2.circle(image, (int(uvd[0]), int(uvd[1])), size + 1, (255, 255, 255)) + + +def predict(model_dir, image_dir, params, camera, camera_input, mesh_file=None): + """Predicts keypoints on all images in dset_dir, evaluates 3D accuracy.""" + + # Set up network for prediction. + mparams = params.model_params + num_kp = mparams.num_kp + + # Set up predictor from model directory. + model = tf.saved_model.load(model_dir) + predict_fn = model.signatures['serving_default'] + + colors = plt.cm.get_cmap('rainbow')(np.linspace(0, 1.0, num_kp))[:, :3] + colors = (colors * 255).tolist() + + # Set up mesh object, if the mesh file exists. + obj = None + if mesh_file and mesh_file != 'show': + obj = utils.read_mesh(mesh_file, num=300) + obj.large_points = False + + # Iterate over all images in image_dir. + total_time = 0.0 + count = 0 + mae_list = [] + + filenames = glob.glob(os.path.join(image_dir, '*_L.png')) + filenames.sort() + for fname in filenames: + # Read in and resize images if necessary. + print(fname) + im_l = utils.read_image(fname) + targs_pb = utils.read_target_pb(fname.replace('_L.png', '_L.pbtxt')) + kps_pb = targs_pb.kp_target + im_l = utils.resize_image(im_l, camera, camera_input, + targs_pb) # NB: changes targs_pb. + keys_uvd_l, to_world_l, visible_l = utils.get_keypoints(kps_pb) + + im_r = utils.read_image(fname.replace('_L.png', '_R.png')) + targs_pb = utils.read_target_pb(fname.replace('_L.png', '_R.pbtxt')) + kps_pb = targs_pb.kp_target + im_r = utils.resize_image(im_r, camera, camera_input, + targs_pb) # NB: changes kps_pb. + keys_uvd_r, _, _ = utils.get_keypoints(kps_pb) + + # Do cropping if called out in mparams. + if mparams.crop: + img0, img1, offs, visible = utils.do_occlude_crop( + im_l, + im_r, + keys_uvd_l, + keys_uvd_r, + mparams.crop, + visible_l, + dither=0.0, + var_offset=False) + if np.any(visible == 0.0): + print('Could not crop') + continue + offsets = offs.astype(np.float32) + hom = np.eye(3, dtype=np.float32) + to_world_l = to_world_l.astype(np.float32) + keys_uvd_l = keys_uvd_l.astype(np.float32) + + # Batch size of 1. + img_l = tf.constant(np.expand_dims(img0[:, :, :3], 0)) + img_r = tf.constant(np.expand_dims(img1[:, :, :3], 0)) + to_world_l = tf.constant(np.expand_dims(to_world_l, 0)) + keys_uvd_l = tf.constant(np.expand_dims(keys_uvd_l, 0)) + offsets = tf.constant(np.expand_dims(offsets, 0)) + hom = tf.constant(np.expand_dims(hom, 0)) + labels = {} + labels['keys_uvd_L'] = keys_uvd_l + labels['to_world_L'] = to_world_l + + # Now do the magic. + t0 = time.time() + preds = predict_fn( + img_L=img_l, + img_R=img_r, + to_world_L=to_world_l, + offsets=offsets, + hom=hom) + + if count > 0: # Ignore first time, startup is long. + total_time += time.time() - t0 + count += 1 + + xyzw = tf.transpose(preds['xyzw'], [0, 2, 1]) + + mae_3d = utils.world_error(labels, xyzw).numpy() + mae_list.append(mae_3d) + print('mae_3d:', mae_3d) + uvdw = preds['uvdw'][0, Ellipsis].numpy() + xyzw = xyzw[0, Ellipsis].numpy() + offsets = offsets[0, Ellipsis].numpy() + + # uv_pix_raw is in the coords of the cropped image used by the model. + uv_pix_raw = preds['uv_pix_raw'][0, Ellipsis].numpy() # [num_kp, 3] + + img_l = image_as_ubyte(img_l[0, Ellipsis].numpy()) + img_r = image_as_ubyte(img_r[0, Ellipsis].numpy()) + iml_orig = cv2.resize(img_l, None, fx=2, fy=2) + imr_orig = cv2.resize(img_r, None, fx=2, fy=2) + if obj: + p_matrix = utils.p_matrix_from_camera(camera) + q_matrix = utils.q_matrix_from_camera(camera) + xyzw_cam = utils.project_np(q_matrix, uvdw.T) + obj.project_to_uvd(xyzw_cam, p_matrix) + im_mesh = np.array(img_l) + im_mesh = obj.draw_points(im_mesh, offsets) + im_mesh = cv2.resize(im_mesh, None, fx=2, fy=2) + else: + im_mesh = np.zeros(iml_orig.shape, dtype=np.uint8) + + for i in range(uv_pix_raw.shape[0]): + draw_circle(img_l, uv_pix_raw[i, :2], colors[i]) + im_kps = cv2.resize(img_l, None, fx=2, fy=2) + im_large = cv2.vconcat( + [cv2.hconcat([iml_orig, imr_orig]), + cv2.hconcat([im_kps, im_mesh])]) + if mesh_file: + cv2.imshow('Left and right images; keypoints and mesh', im_large) + key = cv2.waitKey() + if key == ord('q'): + break + + print('Total time: %.1f for %d inferences, %.1f ms/inf' % + (total_time, count, total_time * 1000.0 / count)) + mae_list = np.concatenate(mae_list).flatten() + print('MAE 3D (m): %f' % np.mean(mae_list)) + + +def main(argv): + if not len(argv) >= 3: + print('Usage: ./predict.py [show|]') + exit(0) + model_dir = argv[1] + image_dir = argv[2] + mesh_file = None + if len(argv) > 3: + mesh_file = argv[3] + fname = os.path.join(model_dir, 'params.yaml') + with open(fname, 'r') as f: + params, camera_model, camera_image = utils.get_params( + param_file=f, + cam_file=os.path.join(model_dir, 'data_params.pbtxt'), + cam_image_file=os.path.join(image_dir, 'data_params.pbtxt')) + predict( + model_dir, + image_dir, + params, + camera_model, + camera_image, + mesh_file=mesh_file) + + +if __name__ == '__main__': + main(sys.argv) diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/requirements.txt b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..1121fba98ceaf2d199d87a0ab3c4ab4ffa3fba6c --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/requirements.txt @@ -0,0 +1,6 @@ +numpy==1.19.5 +tensorflow==2.4.0 +opencv-python==4.6.0.66 +matplotlib==3.5.3 +scikit-image==0.19.3 +pyyaml==6.0 diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/run.sh b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/run.sh new file mode 100644 index 0000000000000000000000000000000000000000..7927204d0ccee287ec0669d67340000a519ced62 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/run.sh @@ -0,0 +1,25 @@ +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#!/bin/bash +set -e +set -x + +virtualenv -p python3 . +source ./bin/activate + +pip install tensorflow +pip install -r keypose/requirements.txt + +python -m keypose.run_test_load diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/run_test_load.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/run_test_load.py new file mode 100644 index 0000000000000000000000000000000000000000..39d673f34b779ddc6fdb04653f178d925b603d20 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/run_test_load.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Simple test to see if all the modules load.""" + +import matplotlib.pyplot as plt +import numpy as np +import skimage as ski +import tensorflow as tf + +from keypose import utils + +try: + import cv2 # pylint: disable=g-import-not-at-top +except ImportError as e: + print(e) + +print(cv2) +print(plt) +print(np) +print(ski) +print(tf) +print(utils) + + +def main(): + pass + + +if __name__ == '__main__': + main() diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/show_keypoints.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/show_keypoints.py new file mode 100644 index 0000000000000000000000000000000000000000..6e1afb9bcd156089a19c4c895a18fea626a1d804 --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/show_keypoints.py @@ -0,0 +1,113 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""From a directory of images and keypoint protobufs, shows images, with kps. + +Invocation: + $ python -m code/show_keypoints []. +""" + +import glob +import os +import sys + +import matplotlib.pyplot as plt +import numpy as np + +from keypose import utils + +try: + import cv2 # pylint: disable=g-import-not-at-top +except ImportError as e: + print(e) + +colors = 255 * plt.cm.get_cmap('rainbow')(np.linspace(0, 1.0, 10))[:, :3] + + +def draw_circle(image, uvd, color, size=3): + # Filled color circle. + cv2.circle(image, (int(uvd[0]), int(uvd[1])), size, color, -1) + # White outline. + cv2.circle(image, (int(uvd[0]), int(uvd[1])), size + 1, (255, 255, 255)) + + +def show_keypoints(image_dir, mesh_file): + """Display keypoints in a keypose data file.""" + print('Looking for images in %s' % image_dir) + filenames = glob.glob(os.path.join(image_dir, '*_L.png')) + if not filenames: + print("Couldn't find any PNG files in %s" % image_dir) + exit(-1) + filenames.sort() + print('Found %d files in %s' % (len(filenames), image_dir)) + + obj = None + if mesh_file: + obj = utils.read_mesh(mesh_file) + + for fname in filenames: + im_l = utils.read_image(fname) + im_r = utils.read_image(fname.replace('_L.png', '_R.png')) + im_mask = utils.read_image(fname.replace('_L.png', '_mask.png')) + im_border = utils.read_image(fname.replace('_L.png', '_border.png')) + cam, _, _, uvds, _, _, transform = utils.read_contents_pb( + fname.replace('_L.png', '_L.pbtxt')) + print(fname) + ret = show_kps(im_l, im_r, im_mask, im_border, + (cam, uvds, transform), obj) + if ret: + break + + +def show_kps(im_l, im_r, im_border, im_mask, kps, obj=None, size=3): + """Draw left/right images and keypoints using OpenCV.""" + cam, uvds, _ = kps + + im_l = cv2.cvtColor(im_l, cv2.COLOR_BGR2RGB) + im_r = cv2.cvtColor(im_r, cv2.COLOR_BGR2RGB) + + uvds = np.array(uvds) + for i, uvd in enumerate(uvds): + draw_circle(im_l, uvd, colors[i * 3], size) + + if obj: + p_matrix = utils.p_matrix_from_camera(cam) + q_matrix = utils.q_matrix_from_camera(cam) + xyzs = utils.project_np(q_matrix, uvds.T) + obj.project_to_uvd(xyzs, p_matrix) + im_l = obj.draw_points(im_l) + + cv2.imshow('Image Left', im_l) + cv2.imshow('Border', im_border) + cv2.imshow('Mask', im_mask) + + key = cv2.waitKey() + if key == ord('q'): + return True + return False + + +def main(): + image_dir = sys.argv[1] + if len(sys.argv) < 3: + mesh_file = None + else: + mesh_file = sys.argv[2] + + show_keypoints(image_dir, mesh_file) + + +if __name__ == '__main__': + main() diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/trainer.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/trainer.py new file mode 100644 index 0000000000000000000000000000000000000000..29d95defc5cca4a995cbef6b55781fc57cb61b7c --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/trainer.py @@ -0,0 +1,201 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Keypose estimator training / eval functions. + +Adapted from 'Discovery of Latent 3D Keypoints via End-to-end +Geometric Reasoning' keypoint network. + +Given a 2D image and viewpoint, predict a set of 3D keypoints that +match the target examples. + +Can be instance or class specific, depending on training set. + +Typical invocation: +$ python3 -m keypose.trainer.py configs/bottle_0_t5 /tmp/model +""" +import npu_device as npu +npu.open().as_default() + +import os +import sys + +from tensorflow import estimator as tf_estimator +from tensorflow import keras + +from keypose import estimator as est +from keypose import inputs as inp +from keypose import utils + + +def train_and_eval(params, + model_fn, + input_fn, + keep_checkpoint_every_n_hours=0.5, + save_checkpoints_secs=100, + eval_steps=0, + eval_start_delay_secs=10, + eval_throttle_secs=100, + save_summary_steps=50): + """Trains and evaluates our model. + + Supports local and distributed training. + + Args: + params: ConfigParams class with model training and network parameters. + model_fn: A func with prototype model_fn(features, labels, mode, hparams). + input_fn: A input function for the tf.estimator.Estimator. + keep_checkpoint_every_n_hours: Number of hours between each checkpoint to be + saved. + save_checkpoints_secs: Save checkpoints every this many seconds. + eval_steps: Number of steps to evaluate model; 0 for one epoch. + eval_start_delay_secs: Start evaluating after waiting for this many seconds. + eval_throttle_secs: Do not re-evaluate unless the last evaluation was + started at least this many seconds ago + save_summary_steps: Save summaries every this many steps. + """ + + mparams = params.model_params + + run_config = tf_estimator.RunConfig( + keep_checkpoint_every_n_hours=keep_checkpoint_every_n_hours, + save_checkpoints_secs=save_checkpoints_secs, + save_summary_steps=save_summary_steps) + + if run_config.model_dir: + params.model_dir = run_config.model_dir + print('\nCreating estimator with model dir %s' % params.model_dir) + estimator = tf_estimator.Estimator( + model_fn=model_fn, + model_dir=params.model_dir, + config=run_config, + params=params) + + print('\nCreating train_spec') + train_spec = tf_estimator.TrainSpec( + input_fn=input_fn(params, split='train'), max_steps=params.steps) + + print('\nCreating eval_spec') + + def serving_input_receiver_fn(): + """Serving input_fn that builds features from placeholders. + + Returns: + A tf.estimator.export.ServingInputReceiver. + """ + modelx = mparams.modelx + modely = mparams.modely + offsets = keras.Input(shape=(3,), name='offsets', dtype='float32') + hom = keras.Input(shape=(3, 3), name='hom', dtype='float32') + to_world = keras.Input(shape=(4, 4), name='to_world_L', dtype='float32') + img_l = keras.Input( + shape=(modely, modelx, 3), name='img_L', dtype='float32') + img_r = keras.Input( + shape=(modely, modelx, 3), name='img_R', dtype='float32') + features = { + 'img_L': img_l, + 'img_R': img_r, + 'to_world_L': to_world, + 'offsets': offsets, + 'hom': hom + } + return tf_estimator.export.build_raw_serving_input_receiver_fn(features) + + class SaveModel(tf_estimator.SessionRunHook): + """Saves a model in SavedModel format.""" + + def __init__(self, estimator, output_dir): + self.output_dir = output_dir + self.estimator = estimator + self.save_num = 0 + + def begin(self): + ckpt = self.estimator.latest_checkpoint() + print('Latest checkpoint in hook:', ckpt) + ckpt_num_str = ckpt.split('.ckpt-')[1] + if (int(ckpt_num_str) - self.save_num) > 4000: + fname = os.path.join(self.output_dir, 'saved_model-' + ckpt_num_str) + print('**** Saving model in train hook: %s' % fname) + self.estimator.export_saved_model(fname, serving_input_receiver_fn()) + self.save_num = int(ckpt_num_str) + + saver_hook = SaveModel(estimator, params.model_dir) + + if eval_steps == 0: + eval_steps = None + eval_spec = tf_estimator.EvalSpec( + input_fn=input_fn(params, split='val'), + steps=eval_steps, + hooks=[saver_hook], + start_delay_secs=eval_start_delay_secs, + throttle_secs=eval_throttle_secs) + + if run_config.is_chief: + outdir = params.model_dir + if outdir is not None: + print('Writing params to %s' % outdir) + os.makedirs(outdir, exist_ok=True) + params.write_yaml(os.path.join(outdir, 'params.yaml')) + + print('\nRunning estimator') + tf_estimator.train_and_evaluate(estimator, train_spec, eval_spec) + + print('\nSaving last model') + ckpt = estimator.latest_checkpoint() + print('Last checkpoint:', ckpt) + ckpt_num_str = ckpt.split('.ckpt-')[1] + fname = os.path.join(params.model_dir, 'saved_model-' + ckpt_num_str) + print('**** Saving last model: %s' % fname) + estimator.export_saved_model(fname, serving_input_receiver_fn()) + + +def main(argv): + if not len(argv) >= 2: + print('Usage: ./trainer.py ' + '[model_dir (/tmp/model)]') + exit(0) + + config_file = argv[1] + if len(argv) > 2: + model_dir = argv[2] + else: + model_dir = '/tmp/model' + + fname = os.path.join(utils.KEYPOSE_PATH, config_file + '.yaml') + with open(fname, 'r') as f: + params, _, _ = utils.get_params(param_file=f) + dset_dir = os.path.join(utils.KEYPOSE_PATH, params.dset_dir) + # Configuration has the dset directory, now get more info from there. + with open(fname, 'r') as f: + params, _, _ = utils.get_params( + param_file=f, + cam_file=os.path.join(os.path.join(dset_dir, 'data_params.pbtxt'))) + params.model_dir = model_dir + params.dset_dir = dset_dir + + print('Parameters to train and eval:\n', params.make_dict()) + + train_and_eval( + params, + model_fn=est.est_model_fn, + input_fn=inp.create_input_fn, + save_checkpoints_secs=600, + eval_throttle_secs=600, + eval_steps=1000, + ) + + +if __name__ == '__main__': + main(sys.argv) diff --git a/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/utils.py b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/utils.py new file mode 100644 index 0000000000000000000000000000000000000000..ff7908d552f59e4e782311b3305d589318940a1d --- /dev/null +++ b/TensorFlow2/contrib/cv/KEYPOSE_ID2043_for_Tensorflow2/utils.py @@ -0,0 +1,1175 @@ +# coding=utf-8 +# Copyright 2022 The Google Research Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Utilities for reading images, parsing protobufs, etc.""" + +import math +import os +import random + +from google.protobuf import text_format +import matplotlib as plt +import matplotlib.cm # pylint: disable=unused-import +import numpy as np +from skimage.draw import ellipse +from skimage.exposure import adjust_gamma +from skimage.filters import gaussian +from skimage.transform import ProjectiveTransform +from skimage.transform import resize +from skimage.transform import warp +import tensorflow as tf +import yaml + +from keypose import data_pb2 as pb + +try: + import cv2 # pylint: disable=g-import-not-at-top +except ImportError as e: + print(e) + +# Top level keypose directory. +KEYPOSE_PATH = os.path.join(os.getcwd(), 'keypose') + + +# Read image, including .exr images. +def read_image(fname): + ext = os.path.splitext(fname)[1] + if ext == '.exr': + print('reading exr file') + image = cv2.imread(fname, cv2.IMREAD_ANYCOLOR | cv2.IMREAD_ANYDEPTH) + else: + image = cv2.imread(fname) + assert image is not None, 'Cannot open %s' % fname + return image + + +# Camera array to camera protobuf +def cam_array_to_pb(cam): + cam_pb = pb.Camera() + cam_pb.fx = cam[0] + cam_pb.fy = cam[1] + cam_pb.cx = cam[2] + cam_pb.cy = cam[3] + cam_pb.baseline = cam[4] + cam_pb.resx = cam[5] + cam_pb.resy = cam[6] + return cam_pb + + +# Camera protobuf to camera array +def cam_pb_to_array(cam_pb): + return [ + cam_pb.fx, cam_pb.fy, cam_pb.cx, cam_pb.cy, cam_pb.baseline, cam_pb.resx, + cam_pb.resy + ] + + +# Dummy transform that always produces 0 vector as result. +def dummy_to_uvd(): + to_uvd = np.zeros((4, 4)) + to_uvd[3, 3] = 1.0 + return to_uvd + + +# Zero uvd stack. +def dummy_keys_uvd(num): + uvd = np.zeros(4) + uvd[3] = 1.0 + return [uvd for _ in range(num)] + + +def k_matrix_from_camera(camera): + return np.array([ + [camera.fx, 0, camera.cx], # fx, cx + [0, camera.fy, camera.cy], # fy, cy + [0, 0, 1] + ]) + + +def q_matrix_from_camera(camera): + return np.array([ + [1.0, 0, 0, -camera.cx], # cx + [0, 1.0, 0, -camera.cy], # cy + [0, 0, 0, camera.fx], # fx + [0, 0, 1.0 / camera.baseline, 0] + ]) # baseline + + +def p_matrix_from_camera(camera): + return np.array([ + [camera.fx, 0, camera.cx, 0], # fx, cx + [0, camera.fy, camera.cy, 0], # fy, cy + [0, 0, 0, camera.fx * camera.baseline], # fx*baseline + [0, 0, 1.0, 0] + ]) + + +# Parse a transform protobuf. +def get_transform(trans_pb): + transform = np.array(trans_pb.element) + if transform.size == 16: + return transform.reshape((4, 4)) + return None + + +def get_keypoints(targ_pb): + """Parse a keypoint protobuf.""" + uvds = [] + visible = [] + focal_length = targ_pb.camera.fx + baseline = targ_pb.camera.baseline + for kp_pb in targ_pb.keypoints: + uvds.append( + np.array([kp_pb.u, kp_pb.v, focal_length * baseline / kp_pb.z, 1])) + visible.append(kp_pb.visible) + transform = get_transform(targ_pb.transform) + if transform is None: + world_t_uvd = None + else: + world_t_uvd = np.linalg.inv(transform).dot( + q_matrix_from_camera(targ_pb.camera)) + return np.array(uvds), world_t_uvd, np.array(visible) + + +# NOTE: xyzs are NOT world coords. xy are percent image coords, z is depth (m). +def get_contents_pb(targ_pb): + uvds, xyzs, visible = get_keypoints(targ_pb) + cam = targ_pb.camera + transform = get_transform(targ_pb.transform) + if transform is None: + return cam, None, None, uvds, xyzs, visible, transform + uvd_t_world = p_matrix_from_camera(cam).dot(transform) + world_t_uvd = np.linalg.inv(transform).dot(q_matrix_from_camera(cam)) + return cam, uvd_t_world, world_t_uvd, uvds, xyzs, visible, transform + + +# Reading text-formatted protobuf files +def read_from_text_file(path, proto): + with open(path, 'r') as file: + text_format.Parse(file.read(), proto) + return proto + + +def read_target_pb(path): + target_pb = pb.KeyTargets() + read_from_text_file(path, target_pb) + return target_pb + + +def read_keys_pb(path): + target_pb = pb.KeyTargets() + read_from_text_file(path, target_pb) + return target_pb.kp_target + + +# Returns a dict of the filename strings in a TfSet. +def read_tfset(path): + data_pb = pb.TfSet() + read_from_text_file(path, data_pb) + return data_pb + + +def make_tfset(train_names, val_names, name): + tfset_pb = pb.TfSet() + tfset_pb.train[:] = train_names + tfset_pb.val[:] = val_names + tfset_pb.name = name + return tfset_pb + + +# Read the contents of a target protobuf. +def read_contents_pb(path): + return get_contents_pb(read_target_pb(path).kp_target) + + +# Make a DataParams protobuf. +def make_data_params(resx, resy, num_kp, cam): + data_pb = pb.DataParams() + data_pb.camera.CopyFrom(cam) + data_pb.resx = resx + data_pb.resy = resy + data_pb.num_kp = num_kp + return data_pb + + +# Read contents of a camera protobuf. +def read_data_params(path): + data_pb = pb.DataParams() + read_from_text_file(path, data_pb) + cam = data_pb.camera + return data_pb.resx, data_pb.resy, data_pb.num_kp, cam + + +def write_to_text_file(path, proto): + with open(path, 'w') as file: + file.write(str(proto)) + + +def project_np(mat, vec): + """Projects homogeneous 3D XYZ coordinates to image uvd coordinates.""" + # has shape [4, N]. + # has shape [4, 4] + # Return has shape [4, N]. + + p = mat.dot(vec) + # Using <3:4> instead of <3> preserves shape. + p = p / (p[3:4, :] + 1.0e-10) + return p + + +# Maximum number of projection frames for losses. +MAX_TARGET_FRAMES = 5 + +# Standard image input parameters for the model. +DEFAULT_PARAMS = """ +batch_size: 32 +dset_dir: '' +model_dir: '' +steps: 80000 + +model_params: +model_params: + use_regress: True # Use regression or integration. + batchnorm: [0.999, 1.0e-8, False] + num_filters: 48 # Number of filters across DCNN. + filter_size: 3 + max_dilation: 32 + dilation_rep: 1 + dropout: 0.0 + disp_default: 30 + sym: [0] + input_sym: [0] # Mix up symmetric ground truth values. + use_stereo: true + visible: true # Use only samples with visible keypoints. + + crop: [180, 120, 30] # Crop patch size, WxH, plus disp offset. + dither: 20.0 # Amount to dither the crop, in pixels. + + loss_kp: 1.0 + loss_kp_step: [0, 200] + loss_prob: 0.001 + loss_proj: 2.5 + loss_proj_step: [10000, 20000] + loss_reg: 0.01 + loss_dispmap: 1.0 + loss_dispmap_step: [5000, 10000] + + noise: 4.0 + occ_fraction: 0.2 + kp_occ_radius: 0.0 # Radius for occlusion for real-world keypoints. + blur: [1.0, 4.0] # Min, max in pixels. + motion: [0, 0, 0, 0] # Motion blur, min/max in pixels, min/max in angle (deg). + gamma: [0.8, 1.2] + + rot: [0.0, 0.0, 0.0] # In degrees, [X-axis, Y-axis, Z-axis] + + # Homography parameters [X-axis, Y-axis] + shear: [] # Use X-axis only for stereo [10,0]. + scale: [] # [min, max] applied only on the Y axis. + flip: [] # Use Y-axis only for stereo [False,True]. +""" + + +def get_params(param_file=None, + cam_file=None, + cam_image_file=None, + defaults=DEFAULT_PARAMS): + """Returns default or overridden user-specified parameters, and cam params.""" + + # param_file points to a yaml string. + # cam_file points to a camera pbtxt. + # cam_image_file points to a camera pbtxt. + + params = ConfigParams(defaults) + if param_file: + params.merge_yaml(param_file) + mparams = params.model_params + + cam = None + if cam_file: + print('Model camera params file name is: %s' % cam_file) + resx, resy, num_kp, cam = read_data_params(cam_file) + + mparams.resx = resx + mparams.resy = resy + mparams.num_kp = num_kp + mparams.modelx = resx + mparams.modely = resy + mparams.disp_default /= mparams.resx # Convert to fraction of image. + + if mparams.crop: + mparams.modelx = int(mparams.crop[0]) + mparams.modely = int(mparams.crop[1]) + + cam_image = None + if cam_image_file: + print('Image camera params file name is: %s' % cam_image_file) + _, _, _, cam_image = read_data_params(cam_image_file) + + print('MParams:', mparams.make_dict()) + return params, cam, cam_image + + +# General configuration class for referencing parameters using dot notation. +class ConfigParams: + """General configuration class for referencing params using dot notation.""" + + def __init__(self, init=None): + if init: + self.merge_yaml(init) + + def make_dict(self): + ret = {} + for k in self.__dict__: + val = self.__dict__[k] + if isinstance(val, self.__class__): + ret[k] = val.make_dict() + else: + ret[k] = val + return ret + + # No nesting. + def make_shallow_dict(self): + ret = {} + for k in self.__dict__: + val = self.__dict__[k] + if not isinstance(val, self.__class__): + ret[k] = val + return ret + + def read_yaml(self, fname): + with open(fname, 'r') as f: + ret = self.merge_yaml(f) + return ret + + def write_yaml(self, fname): + with open(fname, 'w') as f: + yaml.dump(self.make_dict(), f, default_flow_style=None) + + def merge_dict(self, p_dict): + """Merges a dictionary into this params.""" + for k in p_dict: + val = p_dict[k] + if k == 'default_file': + print('Default file:', val) + fname = os.path.join(KEYPOSE_PATH, val + '.yaml') + print('Default file fname:', fname) + self.read_yaml(fname) + continue + if isinstance(val, dict): + if getattr(self, k, None): + sub_params = getattr(self, k) + sub_params.merge_dict(val) + else: + sub_params = self.__class__() + sub_params.merge_dict(val) + setattr(self, k, sub_params) + else: + setattr(self, k, val) + + def merge_yaml(self, yaml_str): + try: + ret = yaml.safe_load(yaml_str) + except yaml.YAMLError as exc: + print('Error in loading yaml string') + print(exc) + return False + self.merge_dict(ret) + return True + + # Takes a string of the form 'a:1,b:2,c:[1,2],d:abcd', etc. + # No nesting. + def merge_str(self, p_str): + items = p_str.split('=') + assert len(items) >= 2 + # pylint: disable=g-complex-comprehension + items = items[:1] + [ + item for v in items[1:-1] for item in v.rsplit(',', 1) + ] + items[-1:] + y_list = [items[i] + ': ' + items[i + 1] for i in range(0, len(items), 2)] + y_str = '\n'.join(y_list) + self.merge_yaml(y_str) + + # Returns a string suitable for reading back in. Does not allow + # nested ConfigParams. + def __repr__(self): + # Checks float repr for not having a decimal point in scientific notation. + # Checks for None and returns empty string. + def yaml_str(obj): + if isinstance(obj, type(None)): + return '' + if isinstance(obj, list): + return '[' + ','.join([yaml_str(x) for x in obj]) + ']' + ret = str(obj) + if isinstance(obj, float): + if 'e' in ret and '.' not in ret: + return '.0e'.join(ret.split('e')) + return ret + + ivars = self.make_shallow_dict() + s = ','.join([k + '=' + yaml_str(ivars[k]) for k in ivars]) + return s.replace(' ', '') + + +# uint8 image [0,255] to float [0,1] +def image_uint8_to_float(image): + if image.dtype == np.float32: + return image + image = image.astype(np.float32) * (1.0 / 255.0) + image_np = np.clip(image, 0.0, 1.0) + return image_np + + +def resize_image(image, cam, cam_image, targs_pb): + """Resize an image using scaling and cropping; changes kps_pb to correspond.""" + resx, resy = int(cam_image.resx), int(cam_image.resy) + nxs, nys = int(cam.resx), int(cam.resy) + fx = cam_image.fx + nfx = cam.fx + scale = fx / nfx + + crop = resy - nys * scale, resx - nxs * scale + cropx, cropy = 0, 0 + if crop[0] > 1.5: + cropy = int(round(crop[0] * 0.5)) + if crop[1] > 1.5: + cropx = int(round(crop[1] * 0.5)) + + # Resize image. + image = image[cropy:resy - cropy, cropx:resx - cropx, :] + image = resize(image, (nys, nxs), mode='constant') # Converts to float. + image = image.astype(np.float32) + + def scale_cam(cam_pb): + cam_pb.fx /= scale + cam_pb.fy /= scale + cam_pb.cx = (cam_pb.cx - cropx) / scale + cam_pb.cy = (cam_pb.cy - cropy) / scale + cam_pb.resx = nxs + cam_pb.resy = nys + + def resize_target(targ_pb): + scale_cam(targ_pb.camera) + for kp in targ_pb.keypoints: + kp.u = (kp.u - cropx) / scale + kp.v = (kp.v - cropy) / scale + kp.x = kp.u / nxs + kp.y = kp.v / nys + if kp.u < 0 or kp.u >= nxs or kp.v < 0 or kp.v >= nys: + kp.visible = 0.0 + + resize_target(targs_pb.kp_target) + for targ_pb in targs_pb.proj_targets: + resize_target(targ_pb) + + return image + + +def rotation_transform(x_rot, y_rot, z_rot): + """Creates a rotation transform with rotations around the three axes. + + Args: + x_rot: rotate around X axis (degrees). + y_rot: rotate around Y axis (degrees). + z_rot: rotate around Z axis (degrees). + + Returns: + 4x4 transform. + """ + x_rot = np.pi * x_rot / 180.0 + xt = np.array([[1.0, 0, 0, 0], [0, np.cos(x_rot), -np.sin(x_rot), 0.0], + [0, np.sin(x_rot), np.cos(x_rot), 0.0], [0, 0, 0, 1]]) + y_rot = np.pi * y_rot / 180.0 + yt = np.array([[np.cos(y_rot), 0, np.sin(y_rot), 0], [0, 1, 0, 0], + [-np.sin(y_rot), 0, np.cos(y_rot), 0], [0, 0, 0, 1]]) + z_rot = np.pi * z_rot / 180.0 + zt = np.array([[np.cos(z_rot), -np.sin(z_rot), 0, 0], + [np.sin(z_rot), np.cos(z_rot), 0, 0], [0, 0, 1, 0], + [0, 0, 0, 1]]) + return xt.dot(yt).dot(zt) + + +# rotation of the camera +def rotate_camera(rotation, image, camera, transform, key_pts): + """Rotates a camera around its optical axis. + + Args: + rotation: 4x4 rotation transform, c'_R_c + image: Camera image, h x w x 4 (or 3). + camera: 7-element camera parameters (fx, fy, cx, cy, baseline, resx, resy) + transform: 4x4 transform matrix, w_T_c (camera-to-world). + key_pts: Nx4 u,v,d,w image keypoints, in pixel coordinates. + + Returns: + Rotated image, zero-filled + Updated transform w_T_c' = w_T_c * P * c_R_c' * Q + updated keypoints u,v,d,w, Nx4 + visibility vector for keypoint, N + + Keypoints are converted by P * c'_R_c * Q + """ + + def in_bounds(pt, bounds): + if (pt[0] >= 0 and pt[0] <= bounds[0] and pt[1] >= 0 and + pt[1] <= bounds[1]): + return 1.0 + else: + return 0.0 + + cam_pb = cam_array_to_pb(camera) + pmat = p_matrix_from_camera(cam_pb) + qmat = q_matrix_from_camera(cam_pb) + tp = np.dot(transform, np.dot(pmat, np.dot(np.linalg.inv(rotation), qmat))) + key_pts_p = project_np( + np.dot(pmat, np.dot(rotation, qmat)), np.transpose(key_pts)) + kmat = k_matrix_from_camera(cam_pb) + hmat = kmat.dot(rotation[:3, :3].transpose()).dot(np.linalg.inv(kmat)) + image_np = np.clip(image, 0.0, 0.9999) + warped = warp(image_np, ProjectiveTransform(matrix=hmat)) + visible = np.array([ + in_bounds(key_pts_p[:2, i], camera[5:7]) for i in range(key_pts.shape[0]) + ]) + return warped, tp, key_pts_p.transpose(), visible + + +def warp_homography(res, scale, shear, flip): + """Returns a homography for image scaling, shear and flip. + + Args: + res: resolution of the image, [x_res, y_res]. + scale: scale factor [x_scale, y_scale]. + shear: shear in [x_deg, y_deg]. + flip: boolean [x_flip, y_flip]. + """ + center_mat = np.eye(3) + center_mat[0, 2] = -res[0] / 2.0 + center_mat[1, 2] = -res[1] / 2.0 + cmat_inv = np.linalg.inv(center_mat) + + flip_mat = np.eye(3) + if flip[0]: + flip_mat[0, 0] = -1 + if flip[1]: + flip_mat[1, 1] = -1 + + shear_mat = np.eye(3) + shear_mat[0, 1] = math.tan(math.radians(shear[0])) + shear_mat[1, 0] = math.tan(math.radians(shear[1])) + + scale_mat = np.eye(3) + scale_mat[0, 0] = scale[0] + scale_mat[1, 1] = scale[1] + + return cmat_inv.dot(scale_mat.dot(shear_mat.dot(flip_mat.dot(center_mat)))) + + +def do_rotation(image, image2, transform, camera, key_pts, visible, rotation): + """Add a random rotation about the camera centerpoint. + + Args: + image: HxWx4 image, left image if stereo; can be uint8 or float. + image2: HxWx4 image, right image if stereo, or None + transform: 4x4 to_world transform. + camera: 7-element camera parameters. + key_pts: Nx4 uvdw keypoints. + visible: Visibility prediate for keypoints. + rotation: Rotation as 3-tuple, XYZ axes. + + Returns: + image: Warped by random rotation, float32. + transform: Updated to_world transform. + key_pts: updated uvdw keypoints. + visible: visibility vector for the keypoints. + """ + image = image_uint8_to_float(image) + image2 = image_uint8_to_float(image2) + area, _ = get_area(image) + if area < 10: # Something is wrong here. + return image, image2, transform, key_pts, visible + + rotation = (float(rotation[0]), float(rotation[1]), float(rotation[2])) + while True: + rot = rotation_transform( + random.uniform(-rotation[0], rotation[0]), + random.uniform(-rotation[1], rotation[1]), + random.uniform(-rotation[2], rotation[2])) + image_p, transform_p, key_pts_p, visible_p = rotate_camera( + rot, image, camera, transform, key_pts) + area_p, _ = get_area(image) + if float(area_p) / area > 0.6: + if image2 is not None: + image2_p, _, _, _ = rotate_camera(rot, image2, camera, transform, + key_pts) + else: + image2_p = image_p + break + + # Warp function converts images to float64, this converts back. + return (image_p.astype(np.float32), image2_p.astype(np.float32), + transform_p.astype(np.float32), key_pts_p.astype(np.float32), + visible_p.astype(np.float32)) + + +def do_2d_homography(image, image2, scale, shear, flip, mirrored, split): + """Add random 2D transforms to input images. + + Images are warped according to the 2D transforms of scaling, + shear and flip. The 2D homogenous transform inverse is returned, + so that keypoints can be adjusted after they are predicted. + Transforms that preserve horizontal epipolar lines are vertical flip, + X-axis shear, mirroring, and scaling. + TODO: visibility analysis. + + Args: + image: HxWx4 image, left image if stereo; can be uint8 or float. + image2: HxWx4 image, right image if stereo, or None + scale: floating point bounds, uniform random scale, e.g., [0.8, 1.2]. + shear: x,y shear max bounds for uniform random shear, in degrees. + flip: [True, True] if images are randomly flipped horizontal, vertical. + mirrored: True if images are mirrored. + split: train / eval split. + + Returns: + image: Warped by random transform, float32. + image2: Warped by same random transform, float32. + homography: 3x3 homography matrix for the warp. + """ + if (not mirrored) and not (split == 'train' and (scale or shear or flip)): + return image, image2, np.eye(3, dtype=np.float32) + + if not scale: + scale = [1.0, 1.0] + if not shear: + shear = [0.0, 0.0] + if not flip: + flip = [False, False] + image = image_uint8_to_float(image) + image2 = image_uint8_to_float(image2) + if mirrored: + flip = [False, True] + else: + flip = [random.choice([False, flip[0]]), random.choice([False, flip[1]])] + hom = warp_homography((image.shape[1], image.shape[0]), [ + 1.0, random.uniform(scale[0], scale[1]) + ], [random.uniform(-shear[0], shear[0]), + random.uniform(-shear[1], shear[1])], flip) + if np.allclose(hom, np.eye(3)): + return image, image2, np.eye(3, dtype=np.float32) + hom_inv = np.linalg.inv(hom) + image_p = warp_2d(image, hom_inv) + image2_p = warp_2d(image2, hom_inv) + # Warp function converts images to float64, this converts back. + return (image_p.astype(np.float32), image2_p.astype(np.float32), + hom_inv.astype(np.float32)) + + +def warp_2d(image, hom): + image_np = np.clip(image, 0.0, 0.9999) + warped = warp(image_np, ProjectiveTransform(matrix=hom)) + return warped + + +# Returns a 2D gaussian centered on mean (pix coords, float) with +# variance var (pixels, float). +def gauss2d(mean, var, size): + x = np.arange(0, size[0]) + y = np.arange(0, size[1]) + x, y = np.meshgrid(x, y) + mx, my = mean + vx, vy = var + return np.float32(1. / (2. * np.pi * vx * vy) * + np.exp(-((x - mx)**2. / (2. * vx**2.) + (y - my)**2. / + (2. * vy**2.)))) + + +# Normalize so the peak is 1.0. +def norm_gauss2d(mean, var, size): + g2d = gauss2d(mean, var, size) + m = np.max(g2d) + if m <= 0.0: + return g2d + return g2d * (1.0 / np.max(g2d)) + + +# Make an inverse gaussian for exclusion of a prob field. +def inv_gauss(mean, var, size): + g = gauss2d(mean, var, size) + m = np.max(g) + g_inv = (m - g) * (1.0 / m) + return g_inv + + +def project_uvd(mat, uvd, offset): + uvw = np.array([uvd[0] - offset[0], uvd[1] - offset[1], 1.0]) + uvwt = mat.dot(uvw) + return uvwt[:2] / (uvwt[2] + 1e-10) + + +def do_vertical_flip(image, image2, mirrored): + """Flip image vertically. + + The 2D homogenous transform inverse is returned, + so that keypoints can be adjusted after they are predicted. + + Args: + image: HxWx4 image, left image if stereo; can be uint8 or float. + image2: HxWx4 image, right image if stereo, or None. + mirrored: True if image is mirrored. + + Returns: + image: flipped vertically. + image2: flipped vertically. + homography: 3x3 homography matrix for vertical flip. + """ + if not mirrored: + return image, image2, np.eye(3, dtype=np.float32) + image = image_uint8_to_float(image) + image2 = image_uint8_to_float(image2) + image_p = np.flipud(image) + image2_p = np.flipud(image2) + hom = warp_homography( + (image.shape[1], image.shape[0]), + [1.0, 1.0], # Scale (none). + [0.0, 0.0], # Shear (none). + [False, True]) + return image_p, image2_p, np.linalg.inv(hom).astype(np.float32) + + +# Returns gaussian 2Ds with shape [num_kpts, h, w]. +# keys_uvd has shape [num_kps, 4] +def do_spatial_prob(keys_uvd, hom, offset, var, size): + hom_inv = np.linalg.inv(hom) + uvs = [project_uvd(hom_inv, uvd, offset) for uvd in keys_uvd] + probs = [inv_gauss(uv, [var, var], size) for uv in uvs] + return np.array(probs, dtype=np.float32) + + +# Largest fraction of object that can be occluded. +def do_occlude(image, image2, occ_fraction=0.0): + """Add an elliptical occlusion to the RGBA image. + + Args: + image: RGBA images with A channel @ 255 for valid object. + image2: RGBA images, right stereo. + occ_fraction: fraction of image to be occluded. + + Returns: + Modified image. + Modifies image in place. + """ + area, inds = get_area(image) + if area < 50: + return image, image2 + radius = 2.0 * np.sqrt(area / np.pi) * occ_fraction + + for _ in range(0, 1): + i = random.randint(0, area - 1) + ind = (inds[0][i], inds[1][i]) + rr, cc = ellipse( + ind[0], + ind[1], + random.uniform(1.0, radius), + random.uniform(1.0, radius), + shape=image.shape[0:2], + rotation=random.uniform(-1.0, 1.0) * np.pi) + image[rr, cc, 3] = 0 + image2[rr, cc, 3] = 0 + + return image, image2 + + +def do_motion_blur(image, distance, angle): + """Random fake motion blur by compositing in the x,y plane of the image. + + Args: + image: tensor of images, floating point [0,1], 3 or 4 channels. + distance: how far to move, in pixels . + angle: how much to rotate, in degrees . + + Returns: + Updated image with motion blur. + """ + if not distance[1]: # No blur. + return image + dist = random.uniform(*distance) * 0.5 + ang = math.radians(random.uniform(*angle)) + x, y = dist * math.cos(ang), dist * math.sin(ang) + rows, cols = image.shape[:2] + im = np.array([[1, 0, x], [0, 1, y]]) + im1 = cv2.warpAffine(image, im, (cols, rows)) + im = np.array([[1, 0, 2 * x], [0, 1, 2 * y]]) + im2 = cv2.warpAffine(image, im, (cols, rows)) + im = np.array([[1, 0, -x], [0, 1, -y]]) + im3 = cv2.warpAffine(image, im, (cols, rows)) + im = np.array([[1, 0, -2 * x], [0, 1, -2 * y]]) + im4 = cv2.warpAffine(image, im, (cols, rows)) + im = (image + im1 + im2 + im3 + im4) * 0.2 + np.clip(im, 0.0, 1.0, im) + return im + + +def do_composite(image, bg_fname, sigma, motion, noise, gamma): + """Composite a background image onto the foreground. + + Args: + image: original image, floating point [0,1]. + bg_fname: background image file name, None or empty string if none. + sigma: blur in pixels; single value or range. + motion: 4-tuple . + noise: pixel noise in the range 0-255, either single value or range. + gamma: gamma correction to be applied to image, 0 for none. + + Returns: + Updated image. + """ + + def make_random(x): + # Arg x can be list, tuple, numpy.ndarray + if isinstance(x, list) or isinstance(x, tuple): + x = np.array(x) + assert isinstance( + x, np.ndarray), 'Argument to do_composite must be list or array' + if x.size == 0: + return None + elif x.size == 1: + return x[0] + else: + return random.uniform(x[0], x[1]) + + if motion[1]: + image = do_motion_blur(image, motion[:2], motion[2:]) + + ys, xs, _ = image.shape + if bg_fname: + scene = read_image(bg_fname) * (1.0 / 255.0) + if random.choice([True, False]): + scene = np.flipud(scene) + if random.choice([True, False]): + scene = np.fliplr(scene) + yss, xss = scene.shape[0], scene.shape[1] + assert yss > ys, 'Background image must be larger than training image' + assert xss > xs, 'Background image must be larger than training image' + + # Adjust gamma of image. + gamma = make_random(gamma) + if gamma is not None: + image[:, :, :3] = adjust_gamma(image[:, :, :3], gamma) + # Add noise to object. + noise = make_random(noise) + if noise is not None: + image[:, :, :3] += np.random.randn(ys, xs, 3) * noise * 0.5 / 255. + np.clip(image, 0.0, 1.0, image) + + # Cut out ellipse where image alpha is 0. + if bg_fname: + ul_y = random.randint(0, yss - ys - 1) + ul_x = random.randint(0, xss - xs - 1) + scene_crop = scene[ul_y:ul_y + ys, ul_x:ul_x + xs, :] + mask = image[:, :, 3] + rgbmask = np.stack([mask, mask, mask], axis=2) + image[:, :, :3] = scene_crop * (1.0 - rgbmask) + image[:, :, :3] * rgbmask + else: + image[image[:, :, 3] == 0, 0:3] = 0.5 + + # Add gaussian blur and noise. + sigma = make_random(sigma) + im = np.copy(image[:, :, :3]) # Need copy to preserve float32 + gaussian(image[:, :, :3], sigma, multichannel=True, output=im) + # Add noise to whole scene, after blur. + if noise is not None: + im[:, :, :3] += np.random.randn(ys, xs, 3) * noise * 0.5 / 255. + np.clip(im, 0.0, 1.0, im) + + return im + + +# Returns area in pixels. +# Works for both uint8 and float32 images. +def get_area(image): + inds = np.nonzero(image[:, :, 3] > 0) + area = inds[0].shape[0] + return area, inds + + +def do_occlude_crop(image, + image2, + key_pts, + key_pts_r, + crop, + visible, + dither, + var_offset=False): + """Crop area around the object. + + Crop is [W, H, R]', where 'R' is right-disparity offset; or else []. + Images can be either floating-point or uint8. + + Args: + image: left image. + image2: right image. + key_pts: left keypoints. + key_pts_r: right keypoints. + crop: crop is [W, H, R]', where 'R' is right-disparity offset; or else []. + visible: visibility status of keypoints, modified by function. + dither: amount to dither the crop. + var_offset: vary the offset between left and right images. + + Returns: + image: cropped left image. + image2: cropped right image. + offset: offset of the crop in the original image. + visible: visibility status of the keypoints. + """ + + offset = np.array([0, 0, 0], dtype=np.float32) + crop = np.array(crop) + if crop.size == 0: + return image, image2, offset, visible + nxs, nys = crop[0], crop[1] + + def do_crop(im, left_x, top_y, margin=10.0): + y, x, _ = im.shape + x -= margin + y -= margin + right_x = left_x + nxs + bot_y = top_y + nys + if (left_x < margin or left_x > x or right_x < margin or right_x > x or + top_y < margin or top_y > y or bot_y < margin or bot_y > y): + visible[:] = 0.0 + return im[0:nys, 0:nxs, :] + return im[top_y:bot_y, left_x:right_x, :] + + centroid = np.mean(key_pts, axis=0)[0:2] + centroid += np.random.uniform(low=-dither, high=dither, size=(2)) + off_x = int(centroid[0] - nxs / 2 - (nxs - nys) / 2) + off_y = int(centroid[1] - nys / 2) + image = do_crop(image, off_x, off_y) + off_d = crop[2] + if var_offset: + off_d = int(centroid[0] - np.mean(key_pts_r, axis=0)[0]) + image2 = do_crop(image2, off_x - off_d, off_y) + offset = np.array([off_x, off_y, off_d], dtype=np.float32) + return image, image2, offset, visible + + +# Meshing functions. +def farthest_point_sampling(point_set, k): + """Find the k most spread-out poses of a set of poses; translation only.""" + num_pts = point_set.shape[0] + start_idx = np.random.randint(num_pts) + existing_set = np.expand_dims(point_set[start_idx], axis=0) + rest_set = np.copy(point_set) + np.delete(rest_set, start_idx, 0) + + existing_indices = [start_idx] + rest_indices = np.arange(num_pts) + np.delete(rest_indices, start_idx) + + for _ in range(k - 1): + dist = ( + np.sum(np.square(existing_set), axis=1, keepdims=True) + + np.sum(np.square(rest_set.T), axis=0, keepdims=True) - + np.dot(existing_set, rest_set.T) * 2) + min_dist = dist.min(axis=0) + max_idx = min_dist.argmax() + existing_set = np.concatenate( + [existing_set, np.expand_dims(rest_set[max_idx], axis=0)], axis=0) + existing_indices.append(rest_indices[max_idx]) + np.delete(rest_set, max_idx, 0) + np.delete(rest_indices, max_idx) + + return existing_set, existing_indices + + +# Class for holding a CAD object and its keypoints. +class MeshObj: + """Class for holding a CAD object and its keypoints.""" + + def __init__(self): + self.keypoints = np.array([]) + self.vertices = np.array([]) + self.large_points = True + + def read_obj(self, path, num=300): + """Read in a .obj file, parse into vertices and keypoints.""" + # Vertices are in label "o mesh". + # Keypoints are in label "o kp.NNN". + # Just read vertices, not other elements of the .obj file. + kps = {} + with open(path, 'r') as f: + line = f.readline() + while True: + if not line: + break + if len(line) > 2 and line[:2] == 'o ': + # New mesh. + name = line[2:-1] + vertices, line = self._read_sub_obj(f) + if 'mesh' in name: + self.vertices = vertices + if 'kp' in name: # Keypoint object. + kp_num = int(name.split('.')[1]) + kp_val = np.mean(vertices, axis=0) + kps[kp_num] = kp_val + else: + line = f.readline() + keypoints = [kps[i] for i in range(len(kps))] + if not keypoints: + print('Did not find any keypoints') + return + self.keypoints = np.array(keypoints) + self.keypoints = np.concatenate( + [self.keypoints, np.ones((self.keypoints.shape[0], 1))], axis=-1) + self.xyzw = np.concatenate( + [self.vertices, np.ones((self.vertices.shape[0], 1))], axis=-1) + self.make_reduced(num) + + def make_reduced(self, num): + self._make_colored_subset(num) + self.xyzw_reduced = np.concatenate( + [self.vertices_reduced, + np.ones((self.vertices_reduced.shape[0], 1))], + axis=-1) + + def _read_sub_obj(self, f): + """Read in all the vertices.""" + # First read to the beginning of vertices. + line = '' + vertices = [] + while True: + line = f.readline() + if not line: + return None + if 'v ' in line: + break + + # Now process all vertices. + while True: + elems = line[:-1].split(' ') + if elems[0] != 'v': + break + vertices.append(np.array([float(x) for x in elems[1:]])) + line = f.readline() + if not line: + break + return np.array(vertices), line + + # Pick a subset of colored points for display. + def _make_colored_subset(self, num): + self.vertices_reduced, _ = farthest_point_sampling(self.vertices, num) + colors = plt.cm.get_cmap('spring') + zs = self.vertices_reduced[:, 2] + self.reduced_colors = (255 * + colors(np.interp(zs, (zs.min(), zs.max()), + (0, 1)))[:, :3]).astype(np.uint8) + + def project_to_uvd(self, xyzs, p_matrix): + """Does a transform from CAD coords to kps coords, then projects to uvd.""" + kps_t_mesh = ortho_procrustes(self.keypoints, xyzs.T[:, :3]) + uvd_t_mesh = p_matrix.dot(kps_t_mesh) + self.uvds = project_np(uvd_t_mesh, self.xyzw.T).T + self.uvds_reduced = project_np(uvd_t_mesh, self.xyzw_reduced.T).T + + def draw_points(self, image, offsets=(0, 0)): + """Draws u,v points on an image as circles.""" + for i, pt in enumerate(self.uvds_reduced): + u = int(pt[0] - offsets[0]) + v = int(pt[1] - offsets[1]) + if u < 0 or u >= image.shape[1] or v < 0 or v >= image.shape[0]: + continue + image[v, u, :] = self.reduced_colors[i, :] + if self.large_points: + if u > 0 and v > 0 and u < image.shape[1] - 1 and v < image.shape[0] - 1: + for ui in range(-1, 2): + for vi in range(-1, 2): + image[v + vi, u + ui, :] = self.reduced_colors[i, :] + return image + + def segmentation(self, size): + """Create segmentation image using morphology operations.""" + mask = np.zeros(size) + for pt in self.uvds: + u = int(pt[0]) + v = int(pt[1]) + if u < 0 or u >= size[1] or v < 0 or v >= size[0]: + continue + mask[v, u] = 255 + kernel = np.ones((3, 3), np.uint8) + mask = cv2.morphologyEx(mask, cv2.MORPH_CLOSE, kernel) # Converts to float. + mask_dilated = cv2.morphologyEx(mask, cv2.MORPH_DILATE, kernel) + border = mask_dilated - mask + return mask.astype(np.uint8), border.astype(np.uint8) + + +# Orthogonal procrustes method for two sets of 3D points. +# Also does the initial translation to centroid. +# Should work in degenerate cases: 1 or 2 points. +def ortho_procrustes(p_c, p_s): + """Return R,t of the best estimate transform on point clouds p_c and p_s.""" + # No scaling. Transform is from p_c to p_s, i.e., T * p_c ~= p_s. + # Format of args is numpy array, nx3 or nx4,d, each row a 3D point + + p_c = p_c[:, :3] + p_s = p_s[:, :3] + cm = np.mean(p_c, 0) + pcn = p_c - cm # get mean of each dimension, subtract + sm = np.mean(p_s, 0) + psn = p_s - sm + a_mat = psn.transpose().dot(pcn) + u, _, vt = np.linalg.svd(a_mat) + dd = np.eye(3) + dd[2, 2] = np.linalg.det(u.dot(vt)) + rot = u.dot(dd.dot(vt)) # Should check for orthogonality. + t = sm - rot.dot(cm) + tfm = np.eye(4) + tfm[0:3, 0:3] = rot + tfm[0:3, 3] = t + return tfm + + +# Read in CAD model from a .obj file. +# is a file path from the data_tools/objects/ directory. +# is the number of points to use in the reduced set. +def read_mesh(path, num=300): + obj = MeshObj() + print('Reading obj file %s' % path) + obj.read_obj(path, num) + print('Obj file has %d vertices and %d keypoints' % + (len(obj.vertices), len(obj.keypoints))) + return obj + + +# Error functions. +def project(tmat, tvec, tvec_transpose=False): + """Projects homogeneous 3D XYZ coordinates to image uvd coordinates.""" + # has shape [[N,] batch_size, 4, num_kp] or [batch_size, num_kp, 4]. + # has shape [[N,] batch_size, 4, 4] + # Return has shape [[N,] batch_size, 4, num_kp] + + tp = tf.matmul(tmat, tvec, transpose_b=tvec_transpose) + # Using <3:4> instead of <3> preserves shape. + tp = tp / (tp[Ellipsis, 3:4, :] + 1.0e-10) + return tp + + +def world_error(labels, xyzw): + xyzw = tf.transpose(xyzw, [0, 2, 1]) # [batch, 4, num_kp] + # [batch, 4, num_kp] + gt_world_coords = project(labels['to_world_L'], labels['keys_uvd_L'], True) + sub = xyzw[:, :3, :] - gt_world_coords[:, :3, :] + wd = tf.square(sub) + wd = tf.reduce_sum(wd, axis=[-2]) # [batch, num_kp] result. + wd = tf.sqrt(wd) + return wd # [batch, num_kp]