В соответствии с моей задачей мне нужен выходной массив, который возвращает матрицу 17x2.Пример вывода показан ниже:
[[[112.7389984 435.22939381]
[105.58624109 442.22496105]
[105.40821313 428.48843217]
[111.54160163 455.5956664 ]
[111.73701629 422.6852232 ]
[157.57940773 468.98824122]
[152.69650377 418.14950772]
[216.09577598 494.46142991]
[216.24983383 398.55651579]
[187.72555422 470.64766974]
[195.02623991 401.41814955]
[250.42257518 456.73815289]
[254.02587076 414.79482611]
[342.11166065 465.78956559]
[337.49021309 398.70648202]
[420.26860336 483.16769808]
[413.13895387 400.20868124]]
Этот вывод должен быть обновлен и преобразован в формат json, который действует как ввод для другого модуля.Пример файла json
выглядит следующим образом
"people": [{"pose_keypoints_2d": [373.66941223936897, 154.11017137748198, 376.56976806799094, 148.62508032371454, 380.12147964285106, 146.7658045737609, 408.1720184452102, 150.81495177498203, 395.4577760498318, 148.65305484579298, 429.2950931571711, 187.23194235510218, 427.43709937755006, 183.81666234409775, 438.86293520488795, 242.28969041954517, 406.0761933264817, 239.55742403024738, 391.300993933522, 275.09581687542385, 366.366300313692, 273.31374397263687, 437.8343750984803, 266.7701811748018, 413.9231729479147, 269.37950168236074, 427.40363975660733, 334.6826900855724, 391.21232291711186, 334.43577344764236, 471.9465081925208, 373.23237206886364, 393.9988229904401, 372.1616302399678, 0.0, 0.0]}]}
В основном структура должна иметь порядок
"people": [{"pose_keypoints_2d": [x0,y0,x1,y1, x35,y35 ]}]}
Для массива я мог бы создать что-то вроде
dc = {"people":[]}
flat = [0.0 for i in range(36)]
, который в основном является одномерным вектором.Я пытаюсь заполнить вектор, последовательно (x0, y0, x1, y1 ...).Я думаю, что в Matlab были встроенные команды для этого.Я искал команду enumerate
, но я не уверен, что это способ ее решить?