Sipeed MF1のシリアルJSON出力を試す。

Sipeed MF1が登場しました。これは赤外線とデュアルカメラにより、暗くても顔認識ができ、かつ写真とかで偽造できないので、顔認識/顔認証を組み込むのにブレイクスルーになりそうなデバイスです。
https://twitter.com/shigezoneakiba/status/1171076477137276928?s=21

<img width="417" alt="スクリーンショット 2019-09-19 19.44.19.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/52410/6fa8b956-a243-631c-d325-4d1dfb5a7729.png">


そんな Sipeed MF1 は、シリアル通信でJSONをIN/OUTする機能があります。

[MF1 module serial communication protocol V2.0](https://github.com/sipeed/MF1-User-Manual/blob/master/en/MF1%20module%20serial%20communication%20protocol%20V2.0.md)

これを使うことで、MF1 SDKはいじらずに、外付けのRaspberry Pi側でカリカリ処理を書くことができます(後で出てきますが、featureの値のコサイン類似度を取ったりするなら、素直にRaspberry Pi 側のPythonでnumpy使った方が幸せだと思います)。

![pn8Csc4fQtui8CqKwmTdHg_thumb_a4a5.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/52410/6d03dcbd-5c22-c193-b8c7-bbda5df323b0.jpeg)

接続はgithubでの説明のとおり。本体のUSBの他に、IO4, IO5をUSBのシリアル変換アダプタにつなぎます。
シリアル通信は、面倒なのでArduino IDEのシリアルモニタを使いました。

<img width="971" alt="スクリーンショット 2019-09-17 22.06.14.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/52410/a7b7e6d1-539f-1699-90d1-c05a3cfbb776.png">

なお、MF1のFirmwareはこれの `MF1_clr_fea_1.bin` を使いました。

http://dl.sipeed.com/MAIX/SDK/MF1_SDK_Prebuild/uart_proto_v1/2581534b2b68a1a0-dirty


## TL;DR

**3.1 cmd_type** にコマンド一覧がありますが、動詞始まりのものが、PCからMF1に投げる物、その他はMF1からPCに通知するものっぽい。  
基本は、  `set_cfg` で `out_feature` や `auto_out_feature` を `1` に変更して出てきた結果をごにょるのが良さそう。


## 作業ログ

### 適当にjson投げて反応を見る

```json:MF1->PC
21:17:30.067 -> {"version":1,"type":"pkt_prase_failed_ret","code":1,"msg":"version should be 1,but we get 2","cmd":"unknown"}
21:17:50.833 -> {"version":1,"type":"pkt_prase_failed_ret","code":1,"msg":"version should be 1,but we get 2","cmd":"unknown"}
21:27:18.349 -> {"version":1,"type":"pkt_prase_failed_ret","code":1,"msg":"version should be 1,but we get 2","cmd":"unknown"}
```

エラーが返ってくるので接続は間違っていないようだ。


## out_feature を 1 にする

`out_feature` を `1` にすると、記憶している顔とマッチした物が合ったときにログをだしてくれるよう。  
featureとあるので、いわゆるFeatureExtractしたものである認識。

まず、 `set_cfg` コマンドをシリアルコンソールから送信  

```json:PC->MF1
{"version":1,"type":"set_cfg","cfg":{"uart_baud":115200,"out_feature":1,"open_delay":1,"pkt_fix":0,"auto_out_feature":0, "out_interval_in_ms":500,"fea_gate":70}}
```

すると、このように認識時のログが出てくる。  
`uid` を見ると、認識(MF1に記憶している顔)ごとにちゃんとUIDで分別してることが分かる。  

```json:MF1->PC
21:29:59.350 -> {"version":1,"type":"set_cfg_ret","code":0,"msg":"save cfg success"}
21:30:07.248 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"015F063B00000000","total":1,"current":0,"x1":96,"y1":33,"x2":233,"y2":177,"score":81.039787292480469,"uid":"6697EBD5470000000000000000000000","feature":"J/cvHRz58hb60NvZ3wn1WAFIGgeVLePp8T3q9SL8p+TDDhfuC+7fnQbq2PT54/rF3+8O8gkLKs7NBzj03NP97AQcqMMDCwcyBiXZLBIXCT0M+uwSBBY63hQkxtzeDg/6OtE3Fg75Bh3jOhb39dhOH/UEGfT39eo4LBm+9OQWPwP6y9j50xodEbPyPRru8hEHAfryXkrfBPcEBPFL+vLU787jCUPushLeDxzsAdEE6gHYAckDCw/9/B3h0OPq5wvO2e7BFA=="}}
21:30:08.513 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"A94D193B00000000","total":1,"current":0,"x1":98,"y1":48,"x2":235,"y2":193,"score":88.535850524902344,"uid":"6697EBD5470000000000000000000000","feature":"J/cvHRz58hb60NvZ3wn1WAFIGgeVLePp8T3q9SL8p+TDDhfuC+7fnQbq2PT54/rF3+8O8gkLKs7NBzj03NP97AQcqMMDCwcyBiXZLBIXCT0M+uwSBBY63hQkxtzeDg/6OtE3Fg75Bh3jOhb39dhOH/UEGfT39eo4LBm+9OQWPwP6y9j50xodEbPyPRru8hEHAfryXkrfBPcEBPFL+vLU787jCUPushLeDxzsAdEE6gHYAckDCw/9/B3h0OPq5wvO2e7BFA=="}}
21:30:51.234 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0838A53D00000000","total":1,"current":0,"x1":129,"y1":42,"x2":266,"y2":225,"score":78.548187255859375,"uid":"6697EBD5470000000000000000000000","feature":"J/cvHRz58hb60NvZ3wn1WAFIGgeVLePp8T3q9SL8p+TDDhfuC+7fnQbq2PT54/rF3+8O8gkLKs7NBzj03NP97AQcqMMDCwcyBiXZLBIXCT0M+uwSBBY63hQkxtzeDg/6OtE3Fg75Bh3jOhb39dhOH/UEGfT39eo4LBm+9OQWPwP6y9j50xodEbPyPRru8hEHAfryXkrfBPcEBPFL+vLU787jCUPushLeDxzsAdEE6gHYAckDCw/9/B3h0OPq5wvO2e7BFA=="}}
21:30:52.048 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"8ED8B13D00000000","total":1,"current":0,"x1":114,"y1":45,"x2":251,"y2":228,"score":78.769477844238281,"uid":"6697EBD5470000000000000000000000","feature":"J/cvHRz58hb60NvZ3wn1WAFIGgeVLePp8T3q9SL8p+TDDhfuC+7fnQbq2PT54/rF3+8O8gkLKs7NBzj03NP97AQcqMMDCwcyBiXZLBIXCT0M+uwSBBY63hQkxtzeDg/6OtE3Fg75Bh3jOhb39dhOH/UEGfT39eo4LBm+9OQWPwP6y9j50xodEbPyPRru8hEHAfryXkrfBPcEBPFL+vLU787jCUPushLeDxzsAdEE6gHYAckDCw/9/B3h0OPq5wvO2e7BFA=="}}
21:30:53.217 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"D38AC33D00000000","total":1,"current":0,"x1":159,"y1":45,"x2":296,"y2":228,"score":76.115318298339844,"uid":"6697EBD5470000000000000000000000","feature":"J/cvHRz58hb60NvZ3wn1WAFIGgeVLePp8T3q9SL8p+TDDhfuC+7fnQbq2PT54/rF3+8O8gkLKs7NBzj03NP97AQcqMMDCwcyBiXZLBIXCT0M+uwSBBY63hQkxtzeDg/6OtE3Fg75Bh3jOhb39dhOH/UEGfT39eo4LBm+9OQWPwP6y9j50xodEbPyPRru8hEHAfryXkrfBPcEBPFL+vLU787jCUPushLeDxzsAdEE6gHYAckDCw/9/B3h0OPq5wvO2e7BFA=="}}
21:30:53.925 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"5374CE3D00000000","total":1,"current":0,"x1":147,"y1":42,"x2":284,"y2":225,"score":72.856559753417969,"uid":"6697EBD5470000000000000000000000","feature":"J/cvHRz58hb60NvZ3wn1WAFIGgeVLePp8T3q9SL8p+TDDhfuC+7fnQbq2PT54/rF3+8O8gkLKs7NBzj03NP97AQcqMMDCwcyBiXZLBIXCT0M+uwSBBY63hQkxtzeDg/6OtE3Fg75Bh3jOhb39dhOH/UEGfT39eo4LBm+9OQWPwP6y9j50xodEbPyPRru8hEHAfryXkrfBPcEBPFL+vLU787jCUPushLeDxzsAdEE6gHYAckDCw/9/B3h0OPq5wvO2e7BFA=="}}
21:31:21.661 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0701763F00000000","total":1,"current":0,"x1":94,"y1":43,"x2":231,"y2":226,"score":80.512283325195312,"uid":"6697EBD5470000000000000000000000","feature":"J/cvHRz58hb60NvZ3wn1WAFIGgeVLePp8T3q9SL8p+TDDhfuC+7fnQbq2PT54/rF3+8O8gkLKs7NBzj03NP97AQcqMMDCwcyBiXZLBIXCT0M+uwSBBY63hQkxtzeDg/6OtE3Fg75Bh3jOhb39dhOH/UEGfT39eo4LBm+9OQWPwP6y9j50xodEbPyPRru8hEHAfryXkrfBPcEBPFL+vLU787jCUPushLeDxzsAdEE6gHYAckDCw/9/B3h0OPq5wvO2e7BFA=="}}
21:32:16.742 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"CF94BE4200000000","total":1,"current":0,"x1":126,"y1":50,"x2":263,"y2":194,"score":95.298568725585938,"uid":"6152B4F5680000000000000000000000","feature":"DhpEGgXeyPLd4Au/zAoQGQpXMg4FAOYL7zrL/lQsswINN/UfKwEH8/UB8M/mvz3zBOfhDuAK3gHJ7RPVCBkO4xrh+SIoC/g6DSjvLBQ3IjL+EwQd3hoj5hwNCgv7H/DdCrJU5wf+KCAIMgQTs9j1BzEE/toB/N4XLiDmjvk3aOwREwv8vBApw9sQ+A378xoR8ALvIii89e3P/9UjExYXALvmEBn8jwHI7DLw7+bzAvzO7dq7/PX8IufsyNgf6jfPxgD2Ag=="}}
21:32:32.888 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"848EB44300000000","total":1,"current":0,"x1":145,"y1":43,"x2":282,"y2":226,"score":92.5495834350586,"uid":"6152B4F5680000000000000000000000","feature":"DhpEGgXeyPLd4Au/zAoQGQpXMg4FAOYL7zrL/lQsswINN/UfKwEH8/UB8M/mvz3zBOfhDuAK3gHJ7RPVCBkO4xrh+SIoC/g6DSjvLBQ3IjL+EwQd3hoj5hwNCgv7H/DdCrJU5wf+KCAIMgQTs9j1BzEE/toB/N4XLiDmjvk3aOwREwv8vBApw9sQ+A378xoR8ALvIii89e3P/9UjExYXALvmEBn8jwHI7DLw7+bzAvzO7dq7/PX8IufsyNgf6jfPxgD2Ag=="}}
21:32:33.588 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"756FBF4300000000","total":1,"current":0,"x1":133,"y1":61,"x2":270,"y2":205,"score":89.8417739868164,"uid":"6152B4F5680000000000000000000000","feature":"DhpEGgXeyPLd4Au/zAoQGQpXMg4FAOYL7zrL/lQsswINN/UfKwEH8/UB8M/mvz3zBOfhDuAK3gHJ7RPVCBkO4xrh+SIoC/g6DSjvLBQ3IjL+EwQd3hoj5hwNCgv7H/DdCrJU5wf+KCAIMgQTs9j1BzEE/toB/N4XLiDmjvk3aOwREwv8vBApw9sQ+A378xoR8ALvIii89e3P/9UjExYXALvmEBn8jwHI7DLw7+bzAvzO7dq7/PX8IufsyNgf6jfPxgD2Ag=="}}
21:32:34.427 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"FF2DCC4300000000","total":1,"current":0,"x1":130,"y1":41,"x2":267,"y2":225,"score":83.851608276367188,"uid":"6152B4F5680000000000000000000000","feature":"DhpEGgXeyPLd4Au/zAoQGQpXMg4FAOYL7zrL/lQsswINN/UfKwEH8/UB8M/mvz3zBOfhDuAK3gHJ7RPVCBkO4xrh+SIoC/g6DSjvLBQ3IjL+EwQd3hoj5hwNCgv7H/DdCrJU5wf+KCAIMgQTs9j1BzEE/toB/N4XLiDmjvk3aOwREwv8vBApw9sQ+A378xoR8ALvIii89e3P/9UjExYXALvmEBn8jwHI7DLw7+bzAvzO7dq7/PX8IufsyNgf6jfPxgD2Ag=="}}
21:32:37.063 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"9F87F44300000000","total":1,"current":0,"x1":127,"y1":30,"x2":264,"y2":214,"score":74.815704345703125,"uid":"6152B4F5680000000000000000000000","feature":"DhpEGgXeyPLd4Au/zAoQGQpXMg4FAOYL7zrL/lQsswINN/UfKwEH8/UB8M/mvz3zBOfhDuAK3gHJ7RPVCBkO4xrh+SIoC/g6DSjvLBQ3IjL+EwQd3hoj5hwNCgv7H/DdCrJU5wf+KCAIMgQTs9j1BzEE/toB/N4XLiDmjvk3aOwREwv8vBApw9sQ+A378xoR8ALvIii89e3P/9UjExYXALvmEBn8jwHI7DLw7+bzAvzO7dq7/PX8IufsyNgf6jfPxgD2Ag=="}}
21:33:25.157 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"BA3BAE4600000000","total":1,"current":0,"x1":112,"y1":29,"x2":249,"y2":212,"score":74.68377685546875,"uid":"389C96DC6E0000000000000000000000","feature":"Idrp9CLsGQvs1Rjr3CkVQvIYHvitPO4fxBTP4jgBwOfPDAHH7wH5tBjN6OEI6AKr7MMlCPkR++Wp3/7U+Ozx9vIs18QkCzZDBe/VbAgY+SbpFeUS/jL+ti5CsPnI9gu3D+Iv3gXu+wfbBfzkDK1N7O8vFQ7a6BcoMgDk4QgiOBT19uXSwBIbLMchBPT+4RQS8grlDgLe9AEO5fEh6CLk69LSFTYFwAcZ+S/n5eEBB+fbEdzvJvG7/vXp7+QC7BTKpvvRHA=="}}
21:33:25.157 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"2F20B94600000000","total":1,"current":0,"x1":112,"y1":11,"x2":249,"y2":194,"score":71.250503540039062,"uid":"389C96DC6E0000000000000000000000","feature":"Idrp9CLsGQvs1Rjr3CkVQvIYHvitPO4fxBTP4jgBwOfPDAHH7wH5tBjN6OEI6AKr7MMlCPkR++Wp3/7U+Ozx9vIs18QkCzZDBe/VbAgY+SbpFeUS/jL+ti5CsPnI9gu3D+Iv3gXu+wfbBfzkDK1N7O8vFQ7a6BcoMgDk4QgiOBT19uXSwBIbLMchBPT+4RQS8grlDgLe9AEO5fEh6CLk69LSFTYFwAcZ+S/n5eEBB+fbEdzvJvG7/vXp7+QC7BTKpvvRHA=="}}
21:33:25.157 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0C80CD4600000000","total":1,"current":0,"x1":125,"y1":30,"x2":262,"y2":213,"score":73.70880126953125,"uid":"389C96DC6E0000000000000000000000","feature":"Idrp9CLsGQvs1Rjr3CkVQvIYHvitPO4fxBTP4jgBwOfPDAHH7wH5tBjN6OEI6AKr7MMlCPkR++Wp3/7U+Ozx9vIs18QkCzZDBe/VbAgY+SbpFeUS/jL+ti5CsPnI9gu3D+Iv3gXu+wfbBfzkDK1N7O8vFQ7a6BcoMgDk4QgiOBT19uXSwBIbLMchBPT+4RQS8grlDgLe9AEO5fEh6CLk69LSFTYFwAcZ+S/n5eEBB+fbEdzvJvG7/vXp7+QC7BTKpvvRHA=="}}
21:33:25.898 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"AACEDD4600000000","total":1,"current":0,"x1":125,"y1":61,"x2":232,"y2":205,"score":76.0849609375,"uid":"389C96DC6E0000000000000000000000","feature":"Idrp9CLsGQvs1Rjr3CkVQvIYHvitPO4fxBTP4jgBwOfPDAHH7wH5tBjN6OEI6AKr7MMlCPkR++Wp3/7U+Ozx9vIs18QkCzZDBe/VbAgY+SbpFeUS/jL+ti5CsPnI9gu3D+Iv3gXu+wfbBfzkDK1N7O8vFQ7a6BcoMgDk4QgiOBT19uXSwBIbLMchBPT+4RQS8grlDgLe9AEO5fEh6CLk69LSFTYFwAcZ+S/n5eEBB+fbEdzvJvG7/vXp7+QC7BTKpvvRHA=="}}
21:33:26.743 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"44ADEA4600000000","total":1,"current":0,"x1":118,"y1":41,"x2":255,"y2":225,"score":73.684356689453125,"uid":"389C96DC6E0000000000000000000000","feature":"Idrp9CLsGQvs1Rjr3CkVQvIYHvitPO4fxBTP4jgBwOfPDAHH7wH5tBjN6OEI6AKr7MMlCPkR++Wp3/7U+Ozx9vIs18QkCzZDBe/VbAgY+SbpFeUS/jL+ti5CsPnI9gu3D+Iv3gXu+wfbBfzkDK1N7O8vFQ7a6BcoMgDk4QgiOBT19uXSwBIbLMchBPT+4RQS8grlDgLe9AEO5fEh6CLk69LSFTYFwAcZ+S/n5eEBB+fbEdzvJvG7/vXp7+QC7BTKpvvRHA=="}}
21:33:37.047 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"B1DB874700000000","total":1,"current":0,"x1":111,"y1":43,"x2":248,"y2":226,"score":91.334823608398438,"uid":"8C366678700000000000000000000000","feature":"EwkkKCTK2e3D4ffMzSUkNBM3PP/5EPT5/0nK608zlNz2CeUfDPzxBxgD//TwuycT6tzSA/QE2APh+RPK9BglBjz9+gYnFfwrJSrVJCU/LhISCRkZzQox5TQBB//wDNvtFsxR5P8GKBP9Busk4s/wChAbAwrwDdkWGD3SjtlRgOQcDPnluwQo8/D8/xX85Pn9GffrKxjzHgTfD+I39i78Esru+jDokAno9iHt9+XqCgHT8NW7HwDuK//nxvEcATPKz/8PGA=="}}
21:34:35.567 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"9100774A00000000","total":1,"current":0,"x1":115,"y1":28,"x2":252,"y2":211,"score":73.276481628417969,"uid":"8C366678700000000000000000000000","feature":"EwkkKCTK2e3D4ffMzSUkNBM3PP/5EPT5/0nK608zlNz2CeUfDPzxBxgD//TwuycT6tzSA/QE2APh+RPK9BglBjz9+gYnFfwrJSrVJCU/LhISCRkZzQox5TQBB//wDNvtFsxR5P8GKBP9Busk4s/wChAbAwrwDdkWGD3SjtlRgOQcDPnluwQo8/D8/xX85Pn9GffrKxjzHgTfD+I39i78Esru+jDokAno9iHt9+XqCgHT8NW7HwDuK//nxvEcATPKz/8PGA=="}}
21:34:38.397 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"261D304B00000000","total":1,"current":0,"x1":98,"y1":39,"x2":235,"y2":222,"score":89.795806884765625,"uid":"8C366678700000000000000000000000","feature":"EwkkKCTK2e3D4ffMzSUkNBM3PP/5EPT5/0nK608zlNz2CeUfDPzxBxgD//TwuycT6tzSA/QE2APh+RPK9BglBjz9+gYnFfwrJSrVJCU/LhISCRkZzQox5TQBB//wDNvtFsxR5P8GKBP9Busk4s/wChAbAwrwDdkWGD3SjtlRgOQcDPnluwQo8/D8/xX85Pn9GffrKxjzHgTfD+I39i78Esru+jDokAno9iHt9+XqCgHT8NW7HwDuK//nxvEcATPKz/8PGA=="}}
21:34:39.936 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0A91474B00000000","total":1,"current":0,"x1":111,"y1":47,"x2":248,"y2":192,"score":89.816314697265625,"uid":"8C366678700000000000000000000000","feature":"EwkkKCTK2e3D4ffMzSUkNBM3PP/5EPT5/0nK608zlNz2CeUfDPzxBxgD//TwuycT6tzSA/QE2APh+RPK9BglBjz9+gYnFfwrJSrVJCU/LhISCRkZzQox5TQBB//wDNvtFsxR5P8GKBP9Busk4s/wChAbAwrwDdkWGD3SjtlRgOQcDPnluwQo8/D8/xX85Pn9GffrKxjzHgTfD+I39i78Esru+jDokAno9iHt9+XqCgHT8NW7HwDuK//nxvEcATPKz/8PGA=="}}
21:34:40.781 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"CAAC544B00000000","total":1,"current":0,"x1":129,"y1":29,"x2":266,"y2":212,"score":97.1790542602539,"uid":"8C366678700000000000000000000000","feature":"EwkkKCTK2e3D4ffMzSUkNBM3PP/5EPT5/0nK608zlNz2CeUfDPzxBxgD//TwuycT6tzSA/QE2APh+RPK9BglBjz9+gYnFfwrJSrVJCU/LhISCRkZzQox5TQBB//wDNvtFsxR5P8GKBP9Busk4s/wChAbAwrwDdkWGD3SjtlRgOQcDPnluwQo8/D8/xX85Pn9GffrKxjzHgTfD+I39i78Esru+jDokAno9iHt9+XqCgHT8NW7HwDuK//nxvEcATPKz/8PGA=="}}
21:34:41.514 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0AB85F4B00000000","total":1,"current":0,"x1":113,"y1":29,"x2":250,"y2":212,"score":96.404243469238281,"uid":"8C366678700000000000000000000000","feature":"EwkkKCTK2e3D4ffMzSUkNBM3PP/5EPT5/0nK608zlNz2CeUfDPzxBxgD//TwuycT6tzSA/QE2APh+RPK9BglBjz9+gYnFfwrJSrVJCU/LhISCRkZzQox5TQBB//wDNvtFsxR5P8GKBP9Busk4s/wChAbAwrwDdkWGD3SjtlRgOQcDPnluwQo8/D8/xX85Pn9GffrKxjzHgTfD+I39i78Esru+jDokAno9iHt9+XqCgHT8NW7HwDuK//nxvEcATPKz/8PGA=="}}
21:34:43.495 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"F01B7E4B00000000","total":1,"current":0,"x1":97,"y1":28,"x2":234,"y2":211,"score":87.3885498046875,"uid":"8C366678700000000000000000000000","feature":"EwkkKCTK2e3D4ffMzSUkNBM3PP/5EPT5/0nK608zlNz2CeUfDPzxBxgD//TwuycT6tzSA/QE2APh+RPK9BglBjz9+gYnFfwrJSrVJCU/LhISCRkZzQox5TQBB//wDNvtFsxR5P8GKBP9Busk4s/wChAbAwrwDdkWGD3SjtlRgOQcDPnluwQo8/D8/xX85Pn9GffrKxjzHgTfD+I39i78Esru+jDokAno9iHt9+XqCgHT8NW7HwDuK//nxvEcATPKz/8PGA=="}}
21:35:01.898 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"81B8964C00000000","total":1,"current":0,"x1":96,"y1":29,"x2":233,"y2":212,"score":82.1156234741211,"uid":"62931A29750000000000000000000000","feature":"Ag8HJSv7+wjcANjX7hfyc99FEvWwMfnx0SjS/jIpwvj17yjk/xcBmhf25gH+6QfZ5OkX5vwA9vzY+CLX1+zu6BIHscQOGCEIBCjkSBoPCh/2Cuz26yc23As2tfv4CvHEEvsuGBvpDh/V/xT2/7BQ+fEkLAj8+e4uAAC+8vE+YwAA297S3AsVG9jhNh7+1PghJf7zPkXfAPH/BMFB3BXB4sT1+0IBoAUE8j/Y898B7ATSG94CIvXXvgvZxfHhABrR0fbuDQ=="}}
```

### feature の値

`feature` にBASE64で特徴ベクトルっぽい物が入っている。デコードするとそれっぽいけど、固定長の幅と何次元なのかがよーわからん。  
適当にぶった切っていいのか？

<img width="1275" alt="スクリーンショット 2019-09-17 22.25.29.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/52410/0203f897-1b7e-6459-e5e3-220bc0a248fa.png">

### auto_out_feature を 1 にする

`auto_out_feature` については、以下のように定義されている。

> - `auto_out_feature` value description  
  - 0: Need to compare, output the feature value when adding a face  
  - 1: No need to compare, output real-time eigenvalues, at this time `uid` is `null`, `score` is `0`  
  - 2: Need to compare, output real-time eigenvalues ​​of faces  

ということで、 `1` で様子見てみる。

```json:PC->MF1
{"version":1,"type":"set_cfg","cfg":{"uart_baud":115200,"out_feature":1,"open_delay":1,"pkt_fix":0,"auto_out_feature":1, "out_interval_in_ms":500,"fea_gate":70}}
```

さっきと違い、 `uid` が `null` になっている。あと、MF1上での顔の追加もなんかできないっぽいかんじが。

```json:MF1->PC
21:41:52.442 -> {"version":1,"type":"set_cfg_ret","code":0,"msg":"save cfg success"}
21:41:59.808 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"2FF97C0700000000","total":1,"current":0,"x1":112,"y1":62,"x2":249,"y2":206,"score":0,"uid":"null","feature":"FvHhETgC+xHZvgm+6AIhct4yFu2zCwYNrRDO+Cwh0tLe+g/F3g/vxw/3AQD36gi+8eQ58AEFFgLU2ifh3tvfBvwlx7IXLR8s/iPdYRdV6hP/Hu/w/jIqqAw1s/jW3e+8C+ws+P7w+Bfd/PD1CKhS3uEmDOjmBAAWKe/U1gY8KR4G0vDS6i0RMtkAHPwA6AYJDR7oDBjz/vr4/NYh+hbO5tbkGk8MtgAh1hrf9+gbDOjM+s/lCw/d2vvp3tLz8AnSzBTJCw=="}}
21:42:00.484 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"8283870700000000","total":1,"current":0,"x1":94,"y1":61,"x2":230,"y2":205,"score":0,"uid":"null","feature":"FwDe9TYeDhHJwy3R4ycmUflBH+n1GvYLyQPj9TYKy9XlAhvN4x/u3Q7/Fsv57gO7J+M9BgMNBwHGxgrr4vbuBw0N0sMmKw02+gnNbRZa6grLHefa+RsntTM3sgDa1v/T+eMt8wcJ9Q71GfXtH6U11ssdBt/yFh37K/EFuwE5Ih4L8ufV3SUbRdERFQUH7wYbCQ8BDQDbB93u4sshDh/n2dMDOUkFxRsl3i3aGvkLDv3B29/iCS/F8QfmCtr93SXru+nK+Q=="}}
21:42:01.163 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"48B1910700000000","total":1,"current":0,"x1":95,"y1":62,"x2":232,"y2":207,"score":0,"uid":"null","feature":"FPblGhcSIBK13BWzzPIVYP5bB+nPHegLrCjT9k09xd7g4t/Qyw7sxRL1DugF6AHV6eAe/Bj4/vy/yCfS8vXcChAS3MsRJwcx/wT1dDVRGwLuPdbz3yoouBhYxePW8gfY9vgU/A3m7Pnr9eL75sky49UKJ/IB/AUtDgfvqesuJBoU2wTj2A0QLtAA6+nr4vsdCAIIBxoH3vzg8t4hABTZ49zsDjABxuwV+Tv1G+Y+7v6y09zc//7G/ADZzuLw/Bjy0hrSHQ=="}}
21:42:01.869 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"C2369C0700000000","total":1,"current":0,"x1":109,"y1":65,"x2":216,"y2":209,"score":0,"uid":"null","feature":"EQTg/ygYJhfD0SqvvgH/YOtQCNzCHfb7qxfWDScf0ODn9Pu61fr+uwkB+uj8wffDAc5GJxwOF/60viTK9PPW++0Z3NQbL+gXBPrrWTZGJgjfK8zr5RsnxxVMv+fy6AzQ6/QnK+/w6ALt6QLr7LpF79HnHNj0/hA7Cvj2yvMrLhMK0gDS3SAML9z66eX37BkUBAgIBhXs7/vlENwUEfLl4MffFyMg2AIV/i/gE+U++9+7yvDZ/wnaBhnt1uUO2hUTxgnJEA=="}}
21:42:02.532 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"1769A60700000000","total":1,"current":0,"x1":67,"y1":78,"x2":204,"y2":222,"score":0,"uid":"null","feature":"CgH1BBkEEfyxvQi6uvsRXPhh/+PDHgEAtzDTCkAkt+oA7fy6+O/s3RkdDfMIvgHX/9owIAgBGQjU1hTT6Qf4BfgWydMeCAsv9tztWDA/ExfiJtr4zRYmsw5ox9Ti1v/DAOIsAvby/vYHEPz2781G6c4aJOn+4v4vEeoCuggpMgAX7QrmvSAnNOzvDufn/xsKAAANDh0N7fbp4twRCBTc1LjyETYCtAAN/DTR/9kv+PPT7MfWE//ECPjj2dkQ4gTmt+/nEw=="}}
21:42:03.168 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"A839B00700000000","total":1,"current":0,"x1":63,"y1":78,"x2":200,"y2":223,"score":0,"uid":"null","feature":"Hu/4AiwKAvy/vxLRuhEVW/FcBOvZHgr7yx7u7F8suvLp5QXC6+zl5h4XHOj23PbS6eY8HgAKKeze0jXc5g3kERH8xdkYIQAu2fziVTVOBB/ePNcI6BIrpBhWx+LP3vbI++8x6AvS7/sCDev59dc15soiOdgA/BIxMvX5wQtQGwQF9fHf3BtFIegP8v8B7hoUBBgNJBIA7OTh6O8Y8g7iysrb/kj4vvj/2TXiAuQnAfzL7uHY9hr1AATh5eIX6w7etAHXCg=="}}
21:42:03.849 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"1C62BA0700000000","total":1,"current":0,"x1":77,"y1":82,"x2":184,"y2":226,"score":0,"uid":"null","feature":"CQjz/EL6DPy80x++sygQZOloAenLGADxwDfz/1gjuvzi7wTN8/MB1iIe/+34txPb9d07HwkIKQm53yra7PjtEfUTyNcCIvUs9AbvN0BQDRrkNOL05hMlrxhQzenW7OLT9NosE/7p+AAJAAkA8dcjAtfwKcHz+wglM/fswvo/JQkE3/za4jc3NNYN5eoA3iwc9SoYGAno/P7YBt0iGgvsx7fmIjEY0PsA5SLXFOw1/um96end6R7tBQ3wzdYN4vj7yADdBg=="}}
21:42:08.162 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0637FC0700000000","total":1,"current":0,"x1":97,"y1":30,"x2":234,"y2":213,"score":0,"uid":"null","feature":"Dv0+BPrv1AbhyxfOyQwWGhFDNRYEFNwP2SLC6UgswMsBQ9sdLfEa+QEU9cnv3ioD8fHqEeEB/OPfDhrZGQ4q+UP66vQdCQxR/CrjPvosKBoMDBQlzTIq8i0RGhThHNn1+sA93AnhJwn5MARF0d7qDgkM9fz9BNkAHDLDld4oZ+kSBxIWlwwOwAEU8Qv88ekU8vL0Ehny3gTRHeQH/ygUBNzh3hbclO7c8U7h/fX5EhrJ6ua6HOTnKuHu3+QtJTfCwBL5DA=="}}
21:42:08.807 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"7D63060800000000","total":1,"current":0,"x1":112,"y1":42,"x2":249,"y2":225,"score":0,"uid":"null","feature":"H/Qy+QvnzvLytRTxwwcOIAJNKAf8G+X73Ue98k0SzfTkKd0UM/IM+fsB/snowBv++P/5C/Xv/+vlCyjhEg4W5SwO0e4YBfhRAjDnKQAzIw8sDBIi0Ssf4DweGQH2EeH5FLZLywjxHgALN/Y21eTuGBT7BOr2/90VIzzXiNAUWOcFFBsmpRIix+EI9gcO6A8M7AgCEiP02PTuFeT8JSYt9c7n+Qzdi/LJ5TrrAOIPEizL+dieB/nuM9v87MssHw7JwBXvBA=="}}
21:42:09.503 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"14EF100800000000","total":1,"current":0,"x1":95,"y1":45,"x2":232,"y2":228,"score":0,"uid":"null","feature":"GP87+g3zyfPxriPazwkXJwRFIPkEGt8B7jKy4Fk0zODxO84KINwQDAAK/8Px3B4BB/z0DOb2/NbZFwHRGxAh9i794uUa/Q1RBhruOAk7CRggLgwa3TIbxikaBgPRF9/8B706zx3aJ+4QHvou0c/dBP0TBOYG6eYEMh3lkt0uUeUYEP0KpgAg1OYk7f3/0fkq7f/2Axf85gHjAeP9ECck5uLg8S/pj+jc3EPtDOj9ExfW9tamAP/wMvDp4MM1Kh7Isff2BA=="}}
21:42:10.169 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"781C1B0800000000","total":1,"current":0,"x1":99,"y1":42,"x2":236,"y2":225,"score":0,"uid":"null","feature":"Ffw2+gbu0uf3shPcygz8FQpRNg0KGOj31jvC81QS0+r2P9gYK+0N/PT9+sLlxSH59vboH+L8AdjhFSHYGxgZ7h4E8PccBgNXDCfhNgQ5GBYhCgwf2yUV1TYVGQH3E9zoGMRK3PPwJAAQNgMk1t/tBxgJBuTl99sYMDjVj9sVaegVGQYcnQwnvuoJ/QoB6wYn9gH2Dyjo3+voCvEMGCQn/Mzc6BX2kPfM4UXwCvD6GzDY9tusCfPzMO3w6N82GxnMrRwG/w=="}}
21:42:10.852 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"22A7250800000000","total":1,"current":0,"x1":100,"y1":41,"x2":237,"y2":225,"score":0,"uid":"null","feature":"DfNCAwbnxfbushbhyw0HHgdFNhgEE+cB4TPL7lMiyuf5QtYVHvENBwANA9Hn2CH96/PnEtv89N/iExDfGBkc9C399vch/wRVCS/oLwMsEhsnGxko0yge3ywVHArlGNbtCb9B0wftKPwTM/0q0d/wExsSAPD2+uEPNi/Hkt8qYdwTDAwZkxIsvu4P9gr85P8Z/PbtDxnr3vbWFvANCSUk/dHh4RDwivbO3ELxAfDqEyfR9tawBPPxKurw39QzGSG4tRUGCg=="}}
21:42:11.536 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"6FD42F0800000000","total":1,"current":0,"x1":102,"y1":43,"x2":239,"y2":226,"score":0,"uid":"null","feature":"BPM3ARXm0+nuuCPl0goBHQZWNhQGG/b65TTF91gdwfEAU+wNIOsa/fb0/9LszBr28/PuGNX9ANjQGhjVFR8X8Snz9v0oBgRPDCvpMfcxFB0oGgkpzRcYzykVEQb8Jt7sEclM3QTxJfcPMQEu4+PxDR8P/N75890UMTvJleY0adIaFQYUnBozx+8K+goG5QkR8wruFCng7OnbF+wVDBsP7r/X6xXrj+jX5T7zD+7uESXd/duwCvH9H+Pv5eArDyK+sxIG/Q=="}}
21:42:12.234 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0F5F3A0800000000","total":1,"current":0,"x1":102,"y1":41,"x2":239,"y2":225,"score":0,"uid":"null","feature":"COY0Di7t2fLT0zj82iMSKgVHGQwJHdPy4E3I90ojzOnyQPcEEtwh6RcF8s/tvi708PH5Ft/74d/gGSDTBC8C5zXr7fQW7g5HBSv0Jgc/JiAFEwAhyxIkxysgCB0II/TVCdNe2gTqH/cIMfgg7doAGQcL8fL/9fIZEy62t98/YtUCEA4Qrxwa2eEP5x0T0g8h/P75JCDT0u75BNErECEu8tjd+A7WmfC63FYM+e73/xLa7tzH/BPpGc/w4OEt8iS0rwzrCA=="}}
21:42:12.889 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"6A8C440800000000","total":1,"current":0,"x1":114,"y1":42,"x2":251,"y2":225,"score":0,"uid":"null","feature":"+fU/Byfy3PLWxzfy3zMOLQJGJAQBJNf45UPWAjcbz+MAPfkHGOMb9RQTAsnyviP+7+/sG9z279bvGhHa+TEE4iT18+8W8ApKDS3sKfgwFBYBCP4syiQb3zEbDiMEKujWCNdf2u/oMPsFLfYx8N/yKRAI8Or/9ekeDSq0tNA9bsYNDRYaoyQe3OgQ8g4K4hEg+fP2JCbZ2uz8B9MpICAt7Nfo7A3UmPDB41MA8uXwBxrX88rKEQTfIdLs3NIq/iC5tA3+CA=="}}
21:42:13.562 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"01174F0800000000","total":1,"current":0,"x1":115,"y1":41,"x2":252,"y2":225,"score":0,"uid":"null","feature":"Bfw5BC/20/jaxDPd5yQRNwVFKfsCFN313ELB+Doh0Ob2Oe0NF98n7woC/9Pyuyr47+z5GuX/3dPwGRTRAB7/5i3w+/Ae+QtFATLpLQJAJBoIEAUj0CoWzjcgChEHGuXTC8xe4v7tIwIBHvMs48z1JwoQ8ub49uIhFybBseZCd9AEFAgCqhoW2uUU+BQN0AEs9fXiHSHg4On1CNQjECwt7dnT6hTpl/LH6VYA8+PzCBDi883DCwjlGdTq0dks+yPEsQj/BA=="}}
21:42:14.238 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"FD43590800000000","total":1,"current":0,"x1":128,"y1":39,"x2":265,"y2":223,"score":0,"uid":"null","feature":"AfI9Cyfg1PzLvi3o4B0bG/9YNQEBGOIE4yi+8DwwxNsAUeoBE/cb8BUL/NAE1CD87ebwC9n/89HYGw3OACAg+jfw7e0bBhtU/x73NQNGFRYEIBAdxB0g2CogARjtIubZC8xG4gnrLP8LMP084ODrCQ4y6vD/6+UJHRvLnd0yY9YbGhMEiREO494V8w741vA17+r4GCgA5vPtEN0ODSoQ8+3j8iDdmt3o/Ub8C9nqEyDi/MbHEe3bI+vr1vATADC6rOr8EQ=="}}
21:42:14.952 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"08CC630800000000","total":1,"current":0,"x1":129,"y1":39,"x2":266,"y2":223,"score":0,"uid":"null","feature":"+eNJJCDk3N7DvS3y4BwlHwdGKAD9IPr/5Cq38UMt2OsGQ/nkAO8u5gYK+c7/0C7y3v3kBOD859ncHO/e6yQP+jvx4/YZ/wdX+Rz/Lv1AFArrLQQfyB8ZzjUXDw76HdzI9NhT4AnvMB0ZDvQ55tn9/woz5+7/5PQXFxzKmeA4Z84BKx/uqg8c2OcUBhr02esq7vr2/yQJ4QD2H9sf7xog9+7Z/CDvlO7cAVH39OYBGRHr6cC6BOPWDtn82QAoASuqvfb/Bw=="}}
21:42:16.807 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"357F800800000000","total":1,"current":0,"x1":144,"y1":28,"x2":281,"y2":211,"score":0,"uid":"null","feature":"9fMvJyzl1MzEziDK5yoOJPlILRMLIPAB7TDU4j0q1N/5IefT5+k55hEd/t/jyhQC3/vTCuYB4M3yI+XcACcW9Sf56fwZ+QVT+B3yMAoyKRvmI/8qviMZ3DcyCAL+KuDKBdpL0OzcLAcbAf4q6d0QBBk87BAT6gUqEyHGqtpGYsrqGQ3vtBMm2ewnBRr12uIOBP/yByH2090FANoW5xky+e/N+CfqlQLc6lgN8+f4Fgvq8rTOAO/MC9D2yvwgECawzAcK/g=="}}
21:42:17.441 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"BA518A0800000000","total":1,"current":0,"x1":143,"y1":15,"x2":280,"y2":199,"score":0,"uid":"null","feature":"8vNBJCLm19Gv1x3j5iQfLARILf8AI/Pz7y3czkEtvuPyIuzj//Mt4xwKB+31zRMI1OzjBfIE3NztM/bTECIU/jP45/YR8hZU8yfwJwszMhzpJ/s2uyAZ3TApCgr8INzX/95U0fPkLwUIAAI77OQABwo15hAN5/YiACbFpu9PasjqHwj1rxwc0+8kABrz2ucUAO/vARb/3vb7AuYd8CMn8+fKBB/pnf/O/0n++dEAF/bp7cHLFNzWKtD5yxAwDR+0x/sRDg=="}}
21:42:18.130 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"677D940800000000","total":1,"current":0,"x1":143,"y1":14,"x2":280,"y2":198,"score":0,"uid":"null","feature":"9eoiIhzp5sm90hzm4SMfKAhGKAECHfP87TjgxkYyuenjF+bj8vk16RQRBebzxhoO2OPpAAIF0uDgKe/gFiAL/DsE4O8Q8g1c/jTvNQQ3NQ7nHfkxuiUc3jUiCAv/H9jdANRR1PzsOwIN/AI4+N4BHAAm4xYI2vMc/CLCneFKcdvjHQf1uQ0R1ews+BP83u0T+wLt8xME3v7+DeMZ+SIr+ezM/hzzm/7S8074+c8EJvXq8MvAFNXUKM74yQsuFiDDzAQQFA=="}}
21:42:43.514 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"C4F7170A00000000","total":1,"current":0,"x1":127,"y1":49,"x2":264,"y2":193,"score":0,"uid":"null","feature":"AOXaAhUHFRfepwqwxwj8afRZCg/ENdL83jjl7EI1xPTO+/m4yNjV7goM7unywOzlB8ciHhkHHOWr4in19QgB5RQf4dwlERdFDwD/QyVACgX0Jtjy2xIlwBJWx+TK6AX2FcUy3gXsBOvvLPbp9tFW+fQVLM7u9gsYHgLawQA+LwsEwvTX5xtCP+EXFfvi3Bn0/wvvGRf4/OnaC98pDAXS6NX1Aiv+1PX16RXrBMsZ7+vH/tLfBR77Cwvp0s380gDS4vbHHw=="}}
21:42:44.193 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"DC2A220A00000000","total":1,"current":0,"x1":129,"y1":27,"x2":266,"y2":210,"score":0,"uid":"null","feature":"Gej6EgkDDwTIwhKZvwbnbfRZGBnFE+r8wS3f00EpsOHQ5e7Zx/rc0BgHBOXhzgn54c4qLAwHH+fH00fwAQHt/Pc+4ssYJCpB/w/2VSdKDB/8B+T58yYnvgY2yPrBAProENEYAfDxDOrXGBzw5NZbBOgDEtQA9+0QExPIx/ojLxID1+vf+S0QHtoB6+Xq7S0SBgfzCQ/i5wzfBO1KD/zI7t///Bj8v/cB1DjX+tce9OLX/9rUCvbz/PnRxdH56wnz1hzEMw=="}}
21:42:44.830 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"B0F52B0A00000000","total":1,"current":0,"x1":113,"y1":36,"x2":250,"y2":180,"score":0,"uid":"null","feature":"G/znGfkbB/7i1yKwyusFaPVoKQ++Et0MsC/y6TgZt8vh9fnQwQDivR4X+dTy6R7fCtdMHyH+NQ6z0CbOAPj+AB8uu7oeJg41+/X+aygrBRf0797V5DUZxvUy1P/aAAX+EdEhDgDYB+XRAhXv2s089OX8BdIHAuQHBA8CyOIYK1cc0e/89ggBIdryBeXo7gr87zUbGCvo2gjhD9Uh/PvL4fIMCCv2zQgP6Uz4BOw65P7l4ezlBQHV6xnsztIHAgXy3wixJg=="}}
21:42:46.675 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"AE4A480A00000000","total":1,"current":0,"x1":142,"y1":33,"x2":250,"y2":177,"score":0,"uid":"null","feature":"AvXoIQcNBxPYxxi8ugj7d/xkI/6tMPICvxjs3T1Jr9zl8Ovo1vvH1RsY+Ob47wT87ck9GxT7JPu3yjTa/wH4+xUk5rorLioY/v8LbR4qCCAAGu/p8DcY2PYoyQW6EP/rAdInAQ7cCu3NLQoA2tZNCv4FMM8LCvANC//m0vZNLRMV0um/+AsOK98H7PXy4xsFCxD4FxAB9QLdGt9U+CHK498b6Bjzz/sA3zrm2Nge5gX1CwjYLQDj/ADizcYL9g3g2hDKKA=="}}
21:42:47.365 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"107D520A00000000","total":1,"current":0,"x1":110,"y1":35,"x2":246,"y2":179,"score":0,"uid":"null","feature":"De/lFhEKABrpww6xxv7wfe09KgiyKeLwzjfi6jk2t+LQ+/bavf7O1xEW793W4gr+9tk1ERP/I/yu2i3mC/z//yEy1MQZMBo1Cg4OZDw6CgQN/PLp5SQw0PMw2va9//7zF9QqDv7mDeLfGRTv78ZS+/j7GtMBAeMQGw3lw+AeNi8ey/LX/xkXLOXv/+na2iHyBCQEIBfp9gDUHdw/9RC4/uoT/yMBzhQUzULz89ok9vPdAfDZDgjq7x3dx70AAgfm6hm4Lw=="}}
21:42:48.005 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"944D5C0A00000000","total":1,"current":0,"x1":110,"y1":34,"x2":247,"y2":178,"score":0,"uid":"null","feature":"+/DfGwESBA3pxSC4v/boeulRKgqsGvAAvDre7DgoxeDSCPnWxQrOwCAh++vY9QHu7Ms1JAoFLf6+2zHeFxH8Ahcx1sAeMSEqBRcScCs0CgEIBfnv8yQl3vMi2QDAAPzzDtgeBP7lHuLOGB7w7LVaBf78JdIEB/MIFwLSwtstOyUVzuLO+SAlEOP79vXl2SDz+x77GhXmAQvSIN87/Be5/usK/hgF0xEEwzTr7tYqBfLi+fnZFALo9gfexssKBf7z7zC/IQ=="}}
21:42:50.476 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"B120820A00000000","total":1,"current":0,"x1":64,"y1":59,"x2":201,"y2":242,"score":0,"uid":"null","feature":"+eDjASsKCPm8wB2/zf77ZhJaJOu8J/URuTvW01Adps3b8uzC8wji0yAIAtYY4g7I78klB/8YBA3N3RLgCv7yAR4n0sIhFw407un5USg2Dg74K9/11RgatyVK4ubC5vXm/Oku8xDuB+j/Ef72AqYz/9b7Gu4A/vweJ/jzv/I+NCEO5vziySctJ/AH//8R/BgE4yAN/hEA7wLgB/Uo7xvi67/lATv/s/z44zH4Edsz++XT5dPMBBHNCPbpzc0Q/gfYyBLYNA=="}}
21:42:51.158 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"B2A58C0A00000000","total":1,"current":0,"x1":95,"y1":48,"x2":232,"y2":193,"score":0,"uid":"null","feature":"/+3aDy0FCvXnzh27ywYNa/c9H+26IuYTtRnh9kEnv8/a8fe1vf3tvhUGA9357vHaCtZBGQkBB/Gv2Qbh4fL1Ch8t19ETOhUzAg4JWitD9wrtHs/q3iYZsR865fbV+gLdFskb6iHaAufj/vnv+6U+/+3xHeECDwcDHwHyut1NSTIG0efV9h8XLtES7/P68hEV9zYDBxfq3wnlBe8u+xnl7drt/jUDyf0O0jn6F+Yl/urH6evVAA7a4gHl1s3y/hXr1RG7Iw=="}}
21:42:52.409 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"19EF9F0A00000000","total":1,"current":0,"x1":80,"y1":31,"x2":217,"y2":215,"score":0,"uid":"null","feature":"FOXbERcHAAjS2wunvf8IXwhCHuzBMugUvyXZ5D9Gvd/Y89nIz//mzAoH69Ti5AXY+8snFQgF8u6n2BHp5fYA/Bwc29gPLCQ8Dv4VYDE/GAXbH9zy3i4ctRhC1O++AQLiFdkaASTb8fnUCvX15rE4+O77Hu8E+QcaHvb2su4uQywLyOje5AEeLtUHAvz86P8U8xv++AT73hXUBfIu0g3S9eLp9jsKxwgN5kvfB9cx9fvP8vjOGPne6QvS2OsLByTSwgjPMQ=="}}
21:42:53.085 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"1012AA0A00000000","total":1,"current":0,"x1":93,"y1":60,"x2":201,"y2":204,"score":0,"uid":"null","feature":"GubpAjQHIAfYyBvI0xcaYwk5Kd/KJNwDqQrs9TQf0OjL+e2+xg7sxgX1AeDs8/rZ9dVFEgIJ/uy2zxLdzPXxFgkv5McXPP84+gHwViRU7g3fG+Hf8y8aqDZC0fff+w7UEtAa4gnm+erZCe7i98woC9v6C9T1FAMFLAEGrNw8MiT50+7T+xwaUrIh5Qn35goy8iMDGAXg6PX/++Y4AA/33N/fEzIG6OoQ2TbuA+wY8NO20+LX+wbg9g/i5t/x8Q/wxAO3EA=="}}
21:42:53.791 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"919CB40A00000000","total":1,"current":0,"x1":110,"y1":68,"x2":218,"y2":212,"score":0,"uid":"null","feature":"BO/oJwX8BBjb5A/A0QURXA9XIwi5JuUStTvk0TtBn9DW7ejH1/nUqxgL5+T89/ja8sAxGBUMCeu20RzXBev8/CIm5McMJi868RUEXic3JyXxIOj35CUcxQtR8Qu8+ALeCNcb9SbvEfTXHQwY5K5HH/77HO0E+QIYJvTazeszQBsE4ffU2hgOGOcT7QEM/hYA2yD3FhLu1v74/+06+yLX/Nnu6yD7yQL74y/n/9El8ejo7u/PKQjdBOfh0NET7hvK4w+9NA=="}}
21:42:54.447 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"C0CEBE0A00000000","total":1,"current":0,"x1":111,"y1":61,"x2":248,"y2":205,"score":0,"uid":"null","feature":"CeXcGBAEDQnkug3Nzh0FcvtbHPzFH+n/0Sz09EQ6nunW5ejHxePp1BMGE8/24OzkActAEQwME+2s3Bns+AL8DiAo3s8KJBlKABMGUCxJCBT7Itzv5BggtxhU2vvj8gDLEdYb6Rfg++jwGfAGBLAsBvboJ94ACQkcLg3lyeROORUQyuDl7D0vLuEc7PQJ6yYM9Bj8Khfy8/ThEPo9DSrd8N32ACABxwHs5TP8EM0b7+3L7+TY/B/3Bvjh0br87fzozRfALA=="}}
21:42:55.718 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"3F18D20A00000000","total":1,"current":0,"x1":96,"y1":30,"x2":233,"y2":214,"score":0,"uid":"null","feature":"+NrdEiUE/gLr3fi6sxT/bvQ9AvTHKeUB0Cvl60ZMs+vb4u/Gxt72yhkVDtr82OrlBeQ5CggIDvKb7hEA7/sF/w4lzuUCLB4wHBYITikzAgrxJsfe3Q8fwRlR6AHG7+7nIc4W+zPL7wH4CAv8+KVA6wjvNfgL+fUUHxnl1+RNQh8CvN/O8i81KfUR9e/s6C0CFg7uHiLy6grEDOsm9iHa/ND89ikYvQsB1CvfC+QPDOzHCgLf5x/57vva38YC6PLf2hK6Mw=="}}
21:42:56.414 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"CFA2DC0A00000000","total":1,"current":0,"x1":96,"y1":31,"x2":233,"y2":215,"score":0,"uid":"null","feature":"COnJBRsQAhHo2Q2uuw7/a/hJDe3BQukIzBrj8ExJserp5fnBz+LszRYW/Nns4vvXEOJJEBQEFgCa2hrt/vIA7B4Qu9kQJhomG/8FUzExEBbmHtDp3x0nxxFC0//B9vXtDtEqCCTP9QH2BPn78K1N2vn1MPgCBBMnGAH/3e9DLy8UvezP+RQtJ+0OCuzw2hjvDTD2BCDw7Aq+EeIj4BHX4NoFADQHxBoO6D/wEeYt/wXM/Afs/xf14Afc2cMT9gHi1gHGIA=="}}
21:42:57.063 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"38D0E60A00000000","total":1,"current":0,"x1":95,"y1":30,"x2":232,"y2":214,"score":0,"uid":"null","feature":"EPD2FvcBAxLa0Pamy/f/Wv1UKQe2OO0Yzhjl7kQ0mvTd2evQxvrX3BATE9QG7u3o/906BhYBGveo1iD/A/HwDCAv2tobLBs+9w/0bjA6/BP3MMkG5Skvxv9R5vyx5e7fBs4Y9CPjDPrqE/AA8bdK9PASOt30Af0DJ//z0QM4NxIG4ATj4ycmI+4JAOLo+Rv9ExIBFQ/36ujQ9vkq/SfR8Mj/8CD2t/kQ1ETcAdcV9uvC9+rOAAPuA/rT3LwA/BXU7QfGLQ=="}}
21:42:59.463 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"80860B0B00000000","total":1,"current":0,"x1":96,"y1":30,"x2":233,"y2":214,"score":0,"uid":"null","feature":"CuzYChgI+AHi8gisrfYMYPxWBPvUL84SuyPn/FQzrN7l6fjU1ef/zhQRANcK1BjUI90/Chn7JQiW5BHu9tgV7ygUuucOGRs7GQLuTyUsARziEbna0ikYqRg43grF8vz4Fb4iCjPQ9gToAAAA7rMw4vH+GfIHBfYLCxEO2/84Lk0Svvju6A8LMOcEBenp4Qr4CjALCx/r2xvE/9IY/BHd5dUOGy4MxQsP7EnpHvkl9AXK6wH19iXl2Pzy37777gjk0QDNIw=="}}
21:43:00.109 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"C756150B00000000","total":1,"current":0,"x1":95,"y1":30,"x2":232,"y2":213,"score":0,"uid":"null","feature":"BOTdChMRABHdzACwufz5XgdHFvjIO+QQ0iLp41VBq+Db6ebGzufm3hMWAsL/5v/VEdI7CBENEPaY2A34BPP58ygc1NcTJiU4EPsAXygsAQ3pJs7n2xwuyRRN2ACr7/LsCsIdASzU+wTzCP/7/KtP7Pb5LOz+/PwKJv75w/VBNDIFyPDV7BAmLPARAfjs4xcCBSP4/BDy4wjDCO0d5BzV79r7/CkTxgsH4D3p/Noi//PG8/XY+Avn8//b4csL8wvk3gK9Lg=="}}
21:43:00.802 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"58841F0B00000000","total":1,"current":0,"x1":96,"y1":30,"x2":233,"y2":214,"score":0,"uid":"null","feature":"BejfFAwFAQro1/ysugAAXQJQH/nAM9oOwyji70w2rN/n4e/Gzujhxg4K/tQF1QrUFNc9ERX/IfuT3xTs8ucK+yEo0d0ULSI8Ev//WiwtARbxFsHh1yUWtxhM4gHA6/ThHLkfAS/d+AXuDgAA8bNH5/z2JeH09gELHgQI2PY4OkAKyPvf7A8bMuIKDPvr7w8L/CMIEiL12wTRAegh+BnV7tT//ysOwAQF7ELxBecf6/jL6/Ln/hbi6wDs1L0E5QjY3f/AKQ=="}}
21:43:01.420 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"9A54290B00000000","total":1,"current":0,"x1":96,"y1":28,"x2":233,"y2":211,"score":0,"uid":"null","feature":"+9/lESMO/AHm2gCix/sFYgE8G/jBMdkWwyDf4E02qt/m4unJvu3ozBAEB9YC6vzdB9Y9EAT8E/ua5hry8PX7+SMpzeAYLCE0GAr1Yyc3Cgv+JMHv1iAbug1F4gS77/jvGs8Y+DHU9vnsAfX4AKdD6O8CJPj8+PkTFxPt0exAOS8Bx+zf7BQgMfL7Be/y6Av8Cy3/Cxvw4wjEB/Ap6Q7G79D48jwAu/kT4z/vFuoY9fbE6fbq8xTj5fncz8P7+wjU4ATHMQ=="}}
21:43:02.085 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"3B82330B00000000","total":1,"current":0,"x1":98,"y1":31,"x2":235,"y2":215,"score":0,"uid":"null","feature":"AOLdBAgTAg7ZzfuxxwH5ZghPFfvEPOIUxCPi3U1Aqujj4uDDxOzizBMUBMQE4vXXCtc9DhANBwKY3BD+Bwf78yAh2dkUHSA9Dv4AXSMrBQj1I8Tl0xcq0BNU3Qe28O3zEcYh+STc/gf5CgT5855G8vj/LvsF/AULG/7vx+ZJPS0K0/vV3BAxKvIXAPPw4x0ACA71/hj74wLKDegk7SDQ9dcCACcKwgH/6DbjB+gNBPm86/jZ7RTs9vXa2cYN7f7d6QvAMw=="}}
21:43:02.793 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"BA0C3E0B00000000","total":1,"current":0,"x1":94,"y1":46,"x2":231,"y2":230,"score":0,"uid":"null","feature":"CvnkEg/yIP7AvAC54h/0a/lrJvjEJegEryX4+E4prvTr8f+8yvXu3RYVDs4B0wDg/thQGQcLCPizygze9BL7+wUj7tcPHyVU6vj8SioyBCLWFNHv0w8WxxlcwvbU8vvMEtob/uL2Ee70Ehns+MI+COwKI9r79gEfNPLyzvJDMh4O5PbbxC8pQ9sRD+75/iAVAgUOBRvn3ezb9vU0Dhnd2soCFB4W0fEE7zDlB9oH6O7Q78zY/BLs9f7R4tDu1vzqvP7WJQ=="}}
21:43:03.449 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"213A480B00000000","total":1,"current":0,"x1":97,"y1":29,"x2":234,"y2":212,"score":0,"uid":"null","feature":"BuziCxYeDwveyg+zxQ8JZf5fH+zFIe4Ztwbp/EgprOrm3+O30PDuxgYFFtgM5vrhDOxJEP8BCwWR2xD68wXt+gsv2sciJRYtGfz1aRY+8wHzIcPa2C8Ttxo94//N9ADpGcki9B/h8e7h+Pz09aM66vf1JeoBAQgLAQnzxe07Mj0awwHV5ikeOd4Z997t9ygPDRv+CTbm9xTMBOkf/BTR89wQBi0Uzf8a7DnsGuoJ+uW14vDw9wjqAQTh4sUP6fH34RLFJQ=="}}
21:43:04.721 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"28785B0B00000000","total":1,"current":0,"x1":110,"y1":46,"x2":247,"y2":190,"score":0,"uid":"null","feature":"CQDmBQwJEA3ayv+t0RMFc/NMGOzIKPMLuwzm+CsrqO3a4+2+xfvj3wkMJdQL3urfBek7CwYBAP+v3xLxBgzq+xYz1cYQJQ9CHvjqYSZI7gvxItfm3Cg+zBpXxgDN5uroHdQB7RfoAene//T6+qgx8+gEJPX//g0aFwT1zNxFLxYSzeHM5jY3P+oa/Njf4RgTGvz6AB3m/v7XAfwa8B3M6NwLFzAU2vcP3zDjCNUfCdCv4uHl8AjtBQXU37r8+tz33Am/KA=="}}
21:43:05.357 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"9248650B00000000","total":1,"current":0,"x1":111,"y1":33,"x2":248,"y2":177,"score":0,"uid":"null","feature":"C+vhCxMF/g7ywBO6wRP3cudQIwLLGPcOyCru5kgqtNrO8vnMwPDZ2gsYCd3r7vjkAt9AFQICGfeo4R3n/gX59Bkt1cUYMRw3GhzyYCBC8hIEDOPk5ycnuws01v62+ffmFcsT8hLWEObhCQ70969P/vn8IeH8/P4PIwXfxNo/OScOwuHT6yYuKt8T/+jt4ScHBy3tFhrc8gfYD+My/BnP8uQABS4IwQAMwTX3/+QVAurH8erdBw/w/wHgzLcJ9PTq1hi9Gg=="}}
21:43:06.029 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"03766F0B00000000","total":1,"current":0,"x1":111,"y1":30,"x2":248,"y2":175,"score":0,"uid":"null","feature":"BOfCAQcHEg7hyRizyQToduVbMwW1J/QFvy/o9UMmyeXK/gTArv7hygwW/u3k5PTa+dZIGx8OIOurzSXeBwzu8Rsgz80iPhk+AAwIXyw6BAnvEuv46xkfygw7x/XX+/z0GM0W/wfrDOPXDg7d/MVW/PwCJtsH/AwmKQHhyeA0NCIJyeXM7yM2KdYLAfH73g/7CCL8Exjv+PzTGOQs9RHC7d34/ycL0wAExjT0Bd0lCO/Z+e/XBQf86gzn1NPr//f14x28HQ=="}}
21:43:07.162 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"B7FC800B00000000","total":1,"current":0,"x1":111,"y1":13,"x2":248,"y2":196,"score":0,"uid":"null","feature":"AdviFhj++/nnzhnAs/74Zd5LDP/EGAESsyPi51Esw+fJ+/ystu7ayhIICu7o5PjR/NA9Hv4KI/6w4RTr+Ajs9A4g1tEjPh42Dgr8YiBK8gr/Iu/x9hYcsAI50wC38vvkDM0S7CXkDOrXBAjg7LJR9PscH9f+7xUWM/7lxvJDPCAO3uvC/h80INsOAPb02yALBC/nCBHs9A/nC+808hHH7OfoCzAHyQoKyTPx/OQZAOfy9OXX+Qrl/u/szdQH6+7g0xTEJQ=="}}
21:43:07.721 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0840890B00000000","total":1,"current":0,"x1":156,"y1":75,"x2":264,"y2":219,"score":0,"uid":"null","feature":"FcrnKSj2DxTpug/Nog72SvFF/wC6GQoA3iXV0ldCvvnYABev6evy0BELAd303v7V9cpFBQwMLPW52yP8Bfzs+wsUx8MbKxEy/goIWi9JCh/oL/jnC/w8wAhDx+6m6enYAuce/xjeCBULGQvx8bBo5NUHIdH56yIXOfjo1/kjHg/x5+zS/xw8HOgLC/8L4i4M6DbfEvzr/gvYIf4y/v/k6ejuAR7pxxz4yiPU8dghBezoAe7S8hTs+/bV4tUZ4Qvb2AC7EQ=="}}
21:43:08.380 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"9E6D930B00000000","total":1,"current":0,"x1":142,"y1":47,"x2":250,"y2":192,"score":0,"uid":"null","feature":"C/bTGh4FIxnX2xfDywPyZdtLCeO+EhX+tx7mAzcas/Hh5xau3+UCuxsCBubz3vbWD9FnGhL9Kf22yw7aFxHN++8Vw80bNv0t9fXrViI9ARPmKef2ABJJwgo+qfvP6wHX/t0XIQr7Dvrd+g3bBatT8uP/IssA4h4fJufm2gU2Kg7/1/fBACIiOeoF/ev24x4GBRP2BRraBwbbAesLBfvH39LrJh4R0xEX1irCCdkZ9sbe5uPS8hHXBf3h4fIN5u8H3/+//g=="}}
21:43:09.685 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"5D86A70B00000000","total":1,"current":0,"x1":129,"y1":36,"x2":266,"y2":181,"score":0,"uid":"null","feature":"EfXgBykXDRTUqyG01uQCZO1UB/iSGfwgqBzH5kYKxebOBQ263Pbiwx4ABO0H5ALX6c5GHA78J/LL0DDTDvPa/gIay7QsERQ59vj5cBYw+SD5Eebs5yMgxPkvr+LQ7wftCNkqBPLw+P/TDgrd/7RX79EOFNr77QsUC/nZwwoyGhT/2vPZ4hohM934E/j45A3/BBT1/w3wBAri+/Mk8AS62tzpDjnsywUX7TDX8uQaAeLd8Mfp/AHNAfXZ4uMI8//80QXNAg=="}}
21:43:10.369 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"86FAB10B00000000","total":1,"current":0,"x1":111,"y1":48,"x2":248,"y2":193,"score":0,"uid":"null","feature":"GN7hDSIBFQrusSKsvgD8QOpYHAS4K/0WzB/f7lsbrvDPAQajyuve0yUH99X/0/HP/cNOExYMLfG33CHbCf/w7hIP3NIJLiQ6/+giYCs69w3uH+jn/Pkkyvk20va37fPfDM8wDB/2Cgb0IgPh7cdh594JJcnl2wMVNO7lzAA2My4K2f/M4SQqH+cEDfcK5RsJ+iH5DA327g/WBPYc9xbK5cfuAS36zAYK3yXtB9gW/OrZ/eLbBgDt/AzZ3+UP3xnlxu3PKA=="}}
21:43:11.042 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"0823BC0B00000000","total":1,"current":0,"x1":131,"y1":50,"x2":238,"y2":194,"score":0,"uid":"null","feature":"FvbjFgH2GAPRv/rPnff5awRM5hDFIOvW2iEQ3Ec+sg/z6/nmy8PgAf8bA/T56N/z88VDLx30JwS6vTT08RD36PYY2sgqAAYsD9HmUj4sJjr8JOMN4wM+3Addw9nG+iDzENYk7tzaCtzoKhDM3/RVAcsMOPAd+hUqKRvd0QY7JPwV19357RhGMfn/9tnl7UcBAxIPHRD0/d/g6+UvEPPP6O4MCSnl4OPd8CTZ9uAj2urf7fTq/wQQEPzW4toP/fbl3f3RCg=="}}
21:43:11.707 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"84F3C50B00000000","total":1,"current":0,"x1":131,"y1":48,"x2":238,"y2":193,"score":0,"uid":"null","feature":"Hgb0FPzxDBvk1Au2r/n6fP9tARnVIdfn4UkD50Q6iwDx7fnq0r7U6QsjA+f1yvn5/Mk+DiP8KQa03TPvC/UD7RYR4dETDBsxAfrvQkkkLikDJt0J2Qcz5wdH5OTP7Qv1EdUeAO/dD+rxLhPtxvJWA+oHN+wH/+ImJxTU1PFHNgMLzOX50iM3FPT6Adrk5TTtBAkJQRvn6uLU+dUzIQ7Z6dQDAR7k1+nv9DH1+tob1fTM5+/0AwYEFgHh1dUA+RTk2v/SLg=="}}
21:43:12.367 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"FF20D00B00000000","total":1,"current":0,"x1":145,"y1":47,"x2":252,"y2":192,"score":0,"uid":"null","feature":"KffuG/D/FhvQuvDNpe39agdd9hbRD9za7jUZ6klAohDq6urowMnU6xUpFfH60+oE6L1GIw3rNeDRzTv5+gf2BwEk4skWACcv9OLrPjsjEy/3JNoM5QQp3AlSwurU/ArqBtoHAPHf/ejnLA/r1/lKDdwMMusP8fAYJhPC0QQ6Ifn0tugE2SwyMt8G+efa4DcBE/QSOBn29/Hg6OAYMvbF4vD9/xvr39bu8BjQ/MkEzurG9OLq/wAdBgnN3df0/Pfz3ADILw=="}}
21:43:13.062 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"66B0DA0B00000000","total":1,"current":0,"x1":95,"y1":46,"x2":232,"y2":191,"score":0,"uid":"null","feature":"K/zpGekBHyTZ8QOyrP30ZgxLFAPTMOD6xTgP2EAgluDs4wbryuTV0P8v6+zx9Prk68VIIif2IAOttyTpAO794BwA4cb8FQ8S8dv3VDMKMCXgCdn20RIr/BpL5uvF8QHuA+8XK/bcHP3eJC330/F1D+ADKPwV8ukgB/bpzts2Ox36yOzn1f0fGQHnEgH6Bx/0BwAPNRfs1enhD9s27gfe6dH/6R3x5+7y4SrZ5uAk5/K42AHmKvEKAA7T4+Qd9CXn3Oy0MA=="}}
21:43:13.733 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"E3DDE40B00000000","total":1,"current":0,"x1":111,"y1":48,"x2":248,"y2":193,"score":0,"uid":"null","feature":"DgHxL/IDDgvd6QC0xPH9b/xeAAbVJ9rs0kQH7Ekxkv/82QnpytLN3AwWF+kG5+308sFLBh7yKxSp4ib6+vL//BQO3MQLDhckBPr1V0ccHiQBD8oDxQku3/1M7OnS6QDpBtocBPHRF/HtISby4uJ39PEGNvIM9eIbBhTc1fJRQQwJz9zq3RYmFwTdEeXh8jf3FgAEPCfs5eTU/9o/DAzK+tIP+hzv0fHn9y7x7dch2u/K1fLvBwP9BvHfytoT7xvl7frfLw=="}}
21:43:14.409 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"8263EF0B00000000","total":1,"current":0,"x1":110,"y1":44,"x2":218,"y2":188,"score":0,"uid":"null","feature":"Jv7mFxAECxf58gfEnPUBcepD/wvfC9zszDwB6U0kru/q6gjdxsT11BMaC+P54gDg9tBQKiHtKv+xxjDj7fv5/P4R1Nz+IQUeBfDqa0gjJibyJMb+3Q0n2hFS3ePZ4v/gCtYOCwHBBPzjGxbs7+Bl+NMHOvUX+/wqICTU3+9DOQTXu9b45Q45FATi9enj3CkCExYaQBPg3+3g/9AkF/zc8Nz53yT1zPnszi/c5fUU//PG3wL1ARkK7+3X3ekLABH71wW7Dg=="}}
21:43:15.078 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"D490F90B00000000","total":1,"current":0,"x1":111,"y1":46,"x2":218,"y2":190,"score":0,"uid":"null","feature":"KPzoHO0JGw/k5QS7mur/aQY8Bw3KGd/nvyEQ4UUrsvr09vniwuLW6AYn9+fx/OLq58E+OQHlLf++sjP29AP08AoW7tAKGw0WA97la0QbKivrFtP54gAx/RZU5OLJ9wrqCucABO7WDOfeJBPQ2eVoBtn/NwAWAQAkJxXNxOpCMwbt1dj63wlFFgDf8ev2/DH8EAwcMQnc6+TY+esqBPC8+ej97iLi89/ryiXS7e4P6+u71QPu//8z9wbP6uUP/Rz/6AqtIg=="}}
21:43:17.539 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"5F091F0C00000000","total":1,"current":0,"x1":96,"y1":14,"x2":233,"y2":198,"score":0,"uid":"null","feature":"/vwpCBXX1uy/2w3H0wgNQAY1LgTpL/f78Ti04S0ckdnmHOUQIxD89A/0/uz3zwL27MfT/gYM4PfpER7iAfA1/CcK0fYx+xQ/EC/eNhAxKR8XD/wmwDwmxy8bHvjo7+kABrk95Bf3Hvj0K/Af9sv+GwwlARv4F84UADTVq+8pdM4VCQQGsBQn4QbmBQ/w7+wCCe/0HgkEARHv/Noq6CoEDbbr8SngiwXk+0jS99EVHg3a99vBNdXdGOHpy/AXEyu4yAoGJQ=="}}
21:43:18.185 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"2738290C00000000","total":1,"current":0,"x1":128,"y1":28,"x2":265,"y2":211,"score":0,"uid":"null","feature":"9xIwHwzd1ui32vjY2ggMOfxJKPzPIPgA6kip8i4rkuHrHeMMIxjo5iD8FgAI1gkV7sDd+PAJ4fzwCRLn/gUyARMFzvEoAQs+Cyb4QCE+ICQP/gEuyysu2CcaB/X49+H8I61D6w/4JAUEMPUg58/xKB0qCSMPDM8gASjnouZCYsQZD/j4uhAt6uf58fXm4wIEB+PoMBMEFQfg+eQt/Bz8CNAHCCfkjQnQ+Ubw6KoPGRPg/8XIEObgH93Zwd0SECHh2gL/JA=="}}
21:43:21.326 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"07D7580C00000000","total":1,"current":0,"x1":78,"y1":30,"x2":215,"y2":213,"score":0,"uid":"null","feature":"DuLc/DkiCAbn4iLMvCEYUfxBJOK3PNwQ1BHQ5jsgy+vW8ua59AnzwwkCEeL62/rBDOAxIvgeDv6t5grY7ur4DRAkx9AmLA0tCffqRBhnARrmNOjj7iIVuS5D2wXFBPfbEt4t2jHj1vfeBM8NApkl2+ryIOr2CS0OKQYEzPAtKiQW0OPg6yQWO8cp9vgR2gkQ9jcOBQr2+/LgBu8S3xXq3tDuIVfjzBUM7DzvIvco+OzO8wHgAC7X+gn38Mv4AQTSw/q8Cg=="}}
21:43:22.002 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"D95B630C00000000","total":1,"current":0,"x1":96,"y1":60,"x2":233,"y2":204,"score":0,"uid":"null","feature":"FuHgKTAFGADnvRG82xIRUvU9G+SbMecdtSbq40AlwNPZ9Ai4zfnu1Bz/8ecE9ALUBdY6Cw/1BPivzQ7a9dvv9xgi2sIOLBtDBQ/8chw5ASrXHdTk5SYqvRE9w/nA/P/dEe0sDBPuAf7jCAHvD6de9fEBFu8E5wsnJ/jjzAA6IywL3dnX7g4RO+MTEfUHAAv/9Sf0+Rj05+3l+fsj6AjN3dT0/EEEvQUq6x3h/+cT9OTr9dfe+xzU6gfQ2tP75yDT0OTFFQ=="}}
21:43:22.676 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"47896D0C00000000","total":1,"current":0,"x1":95,"y1":61,"x2":232,"y2":205,"score":0,"uid":"null","feature":"H9PeIzD/G/7Syxy81yMYS/FgIuqzOOUWwCPh7E8co9DZ4hC80/v1wCL4AOwizw3dCd9E/B4FBPin1B7M8OH4+wwaz8UMKQJN9RAFWB5GBBzaHtPa5RAYsx4+ze/d/v7eEOopExP08AHxEw0QDK4+5fX0BNYF8AsnJvzw2fM/Kiwf1OjW6RoMO+IaAfgLAQwC6icBGBr/6fHoEfgp7w/T7dP/ETUCsxgbDSbpEeIj+O3v8drZ+C3b+ATw3dn63wDazfTTGg=="}}
21:43:23.354 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"CC13780C00000000","total":1,"current":0,"x1":98,"y1":62,"x2":235,"y2":206,"score":0,"uid":"null","feature":"C9rpFDMLEA3ZqQXO5ggCXOxCGvCSMOYOxyzR10sdtdrI+fzE6QrkyCH1+OAW5wHa8NEq/gAKHvy47R3i//Xs+wcj0KwUFidFAAvtWxA/9ikICurp8BAkyg1Iw/bBAf7gF+o2/wH58AT4EQD1GaJZ7ewCDez57wEhKQHK0e81LCQO1+nv1ykdRdcLHvkL8x38ACfyBR75AfbkBfAv9hPD8Mf+CkDyrwgF7x7sBOAC9fLcB8fd+xff8PzZzsvj8PjW0/zKIQ=="}}
21:43:24.028 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"4D41820C00000000","total":1,"current":0,"x1":111,"y1":52,"x2":248,"y2":196,"score":0,"uid":"null","feature":"CNviGSj/GOTYuRjYyBULT+VXFe+fKfUUxyHs+U8KsOfH9PykyuHsyC71/OUS59vNANJNFAUIHvKg6wfk6Pv2Avsr4eIeKSZD9f4MVB467yzrGNTy7wQVvgxN1/XR9RHUItU18Q8CCPniFwXfC8A9+fgEHNf16w4pQvzf1/RJNhwH4QDU1S8sQtsVD/j+BR8H7CYBISLx+/L19PgvAiLa8cru/z8Fw/4I9izoDt0C9OXvDMvRBBToBQHi5eTv2vbQ0fjVFw=="}}
21:43:24.693 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"7D178C0C00000000","total":1,"current":0,"x1":98,"y1":30,"x2":235,"y2":214,"score":0,"uid":"null","feature":"BtTYDzIEFfTYvgrBwQ0GTt1LF/SWLv0UyiDX90UMrfDE+v+nx/HpxzLuA/cQ69XR9soxCQn/DfCY7Bjd9+75/PQa1d0NIy5FBAMbZBQ88Cn8KNj55gArxhJR1evK9AnlKOgs8Sj09vHmF+70FcZH4/cQI+L63xgrOvza2P1HLgb/yQHbzyk2QOMYAfH68wz/9Bv2Eg/8/PDw8fEm8SjG877w+Tr/x/cU7BfuFdcK/+nlHtraDRXs9wDb5vfj5v3X2gfgDw=="}}
21:43:25.333 -> {"version":1,"type":"face_info","code":0,"msg":"have face","info":{"pic":"E744960C00000000","total":1,"current":0,"x1":98,"y1":30,"x2":235,"y2":214,"score":0,"uid":"null","feature":"DNXZFTkDEOTNuBDQwxYNVNtOEvScPwMG0hvi90MWse268ACxxuruyjbrB/AJ39/T+tI9/xn/Hv+g7hje7fD5/PQk1dsMJyRI/AQWUhtF7S3zHtX/8BIwwwRRz/DQ+QnhJd85/BsB9PfnD+rzFcY82/QVH9/57hA6QP/q4gBJKAMGz/Th5Sg2SeoNCfED7g3//yf/GQ////Tt+e438SjZ7sPtCjr6vQYM8C3oDc0Y+ej2Id/TChb28Pzh6+3h7fHVz/fbFQ=="}}
```

## その他
本当はMF1で顔を追加したときにそのuidの値がもらえれば、その後の `out_feature` のログの `uid` に応じて色々できそうなのだが、今のところはどうもとれないっぽい。顔を追加したときの通知が無い。欲しい。  
しばらくそれが無いとすると、 `auto_out_feature:1` にしといて、 `feature` の値をRaspberry Piで比較したが良さげ。用はMF1自体はデュアルカメラ+赤外線で高性能な物理FeatureExtractorとして使う作戦。