Я работаю в проекте, где мобильный робот бродит по земле с четырьмя стенами.Каждая стена имеет уникальную форму (квадрат, треугольник).Робот определяет форму и вычисляет расстояние между роботом и стеной и экспортирует ее.
желаемые результаты, например
Timestamp A B C D
xxxxx 0 12 0 0
yyyyy 21 0 0 0
Текущий код экспортирует расстояние, независимо от того, является ли оно А, В или С, илиD следующий столбец с отметкой времени.Но я хочу 0 в качестве значений A и B и D, если он обнаружил C.
Timestamp A B C D
xxxxx 41 0 0 0
yyyyy 21 0 0 0
Может кто-нибудь помочь мне в этом?
if area > 200:
cv2.drawContours(frame, [approx], 0, (0, 0, 0), 5)
if len(approx) == 3:
timestamped_camera_readings = np.append(timestamped_camera_readings, (((154*58)/(perimeter/4))*0.2645 ))
elif len(approx) == 4:
timestamped_camera_readings = np.append(timestamped_camera_readings, (((154*58)/(perimeter/4))*0.2645 ))
elif len(approx) == 5:
timestamped_camera_readings = np.append(timestamped_camera_readings, (((154*58)/(g/5))*0.2645 ))
write_fmt = " ".join("%4.2f" for _ in timestamped_camera_readings)
# append time
timestamped_camera_readings = np.append(float(timestamp),timestamped_camera_readings)
write_fmt += " %.0f"
with open("camera_diatanceee.txt", "ab") as ff:
np.savetxt(ff, np.expand_dims(timestamped_camera_readings, axis=0),fmt='%f')