구차니 2021. 4. 1. 19:47

원인 불명의 segmentation fault가 떠서 보니..

입력 tflite 파일이 바뀌었고

input이 uint8에서 float32로 바뀌어서 그런가 하고 바꾸어보니 문제없이 작동한다.

 

memcpy(interpreter->typed_input_tensor<uchar>(0), image.data, image.total() * image.elemSize());
memcpy(interpreter->typed_input_tensor<float>(0), image.data, image.total() * image.elemSize());

 

typed_input_tensor

T * typed_input_tensor(
  int index
)
Return a mutable pointer into the data of a given input tensor.

The given index must be between 0 and inputs().size().

[링크 : https://www.tensorflow.org/lite/api_docs/cc/class/tflite/interpreter]

 

+

학습이 잘못되었나..

둘다 num_classes가 90으로 동일하다.. COCO 90개를 기반으로 추가 학습을 했으면 더 늘어 나야 하는거 아닌가?

 

아래가 추가 학습한 내용.. quantized가 빠지고 use_regular_nms가 추가

아무튼 탐지는 하는데 이상한 숫자로 나오고(0번이던 91이든 나올줄 알았는데)

width도 개판으로 나와서 보니

기존은 이쁘게 0,1,2,3 순서라면

 

학습한 녀석은 3,2,1,0

 

그래서 width랑 label index가 이상하다고 느껴지는건가?