Esempio n. 1
0
def draw_p_frame(frame,
                 flow,
                 base_bboxes,
                 interp=interp_linear,
                 color=(0, 255, 0)):
    frame = draw_flow(frame, flow)
    interp_bboxes = interp(base_bboxes, flow, frame)
    frame = draw_bboxes(frame, interp_bboxes, color=color)
    return frame
def save_label(frame, label, index, output_folder, dense_flow=None, annotate=False):
    frame_filename = FRAME_LABEL_FORMAT.format(output_folder, int(index), label)

    os.makedirs(os.path.dirname(frame_filename), exist_ok=True)

    cv2.imwrite(frame_filename, frame)

    if dense_flow is not None:
        with open(FRAME_FLOW_FORMAT.format(output_folder, int(index), label), "+wb") as flow_file:
            pickle.dump(dense_flow, flow_file)
        if annotate:
            cv2.imwrite(FRAME_LABEL_ANNOTATION.format(output_folder, int(index)), flow.draw_flow(frame, dense_flow, step=32))
Esempio n. 3
0
def draw_histogram(i, frame, flow, bboxes, prefix="graph"):
    frame_rows = frame.shape[0]
    frame_cols = frame.shape[1]
    assert (frame.shape[2] == 3)

    rows = flow.shape[0]
    cols = flow.shape[1]
    assert (flow.shape[2] == 2)

    flow_index = np.asarray(tuple(np.ndindex((rows, cols))))
    index_rate = np.asarray((frame_rows // rows, frame_cols // cols))
    frame_index = flow_index * index_rate + (index_rate // 2)

    frame = draw_flow(frame, flow)

    plot_bbox = plot(flow, frame, flow_index, frame_index)
    for bbox in bboxes.itertuples():
        graph = os.path.join("graph", prefix,
                             f"{prefix}_{i}_{bbox.name}{bbox.Index}.jpg")
        plot_bbox(graph, bbox)
Esempio n. 4
0
def draw_annotate(frame, index, pos, flow, bboxes):
    frame = draw_flow(frame, flow[index])
    if index < bboxes.size:
        return draw_bboxes(frame, bboxes[pos])
    else:
        return draw_none(frame, index)
Esempio n. 5
0
def draw_i_frame(frame, flow, bboxes, color=(0, 255, 0)):
    frame = draw_flow(frame, flow)
    frame = draw_bboxes(frame, bboxes, color=color)
    return frame