imp.setT(frame_idx)
    timepoint_data = edges_dct[idx]
    t = timepoint_data['time_point_s']
    membranes = timepoint_data['membranes']
    membrane_indices_available = [
        membrane['position number'] for membrane in membranes
    ]
    for membrane_index in membrane_indices_available:
        print("Analysing frame " + str(frame_idx) + ", membrane_index = " +
              str(membrane_index))
        membrane_xy_list = membranes[membrane_indices_available.index(
            membrane_index)]['roi']
        roi = PolygonRoi([x for x, y in membrane_xy_list],
                         [y for x, y in membrane_xy_list], Roi.FREELINE)
        imp.setRoi(roi)
        roi.setStrokeWidth(line_width)
        if line_width > 1:
            IJ.run(imp, "Line to Area", "")
            roi = imp.getRoi()
        stats = roi.getStatistics()
        output.append((t, membrane_index, stats.mean, stats.max, stats.min,
                       stats.median, stats.stdDev))
        imp.killRoi()
print(output)

# save output to csv
csv_path = os.path.join(os.path.dirname(edges_file_path),
                        "intensity_stats.csv")
f = open(csv_path, 'wb')
try:
    writer = csv.writer(f)