Beispiel #1
0
            err_mean = np.mean(depth_angMasked)

            myplt.drawtextInAxesBttomLeft(
                fig, ax, "mean:{:>5.2f} [mm]".format(err_mean), -0.008, 8)

            x.append(zen_max), y.append(err_mean)

        else:
            err_mean = 0
            myplt.drawtextInAxesBttomRight(fig, ax, "No area", -0.008, 8)

        cnt += 1

    if saveFlag:
        myplt.my_savefig(
            fig,
            str(savefile.joinpath("{}.png".format(extractID(gtpath.name)))))

    fig.show()

# scatter err by zenith angle
#---------------------------------
fig = plt.figure()
ax = fig.add_subplot(111)

ax.scatter(x, y)

for zenith_num in range(0, 90, zenith_step):
    y_ex = np.array(y)[np.array(x) == zenith_num + zenith_step]
    mn = np.mean(y_ex)
    ax.text(zenith_num + zenith_step, 30, "{:.2f}".format(mn), ha="center")
                # Calc error
                ang_deg = calcAngError(gt, rec)

                # consider mask area
                if maskFlag:
                    maskpath = find_same_id(gtpath, maskpaths)
                    mask = cv2.imread(str(maskpath), -1).astype(np.float32)

                    ang_deg = extractMaskArea(ang_deg, mask, maskFlag)
                    noObj_mask = extractMaskArea(noObj_mask, mask, maskFlag)
                    s0_mask = extractMaskArea(s0_mask, mask, maskFlag)

                ang_deg = ang_deg[noObj_mask * s0_mask]

                mn, std = np.mean(ang_deg), np.std(ang_deg)
                errs = np.append(errs, ang_deg)

            err_perEpoch.append(np.mean(errs))

        ax.plot(epochNums,
                err_perEpoch,
                label="{}_{}".format(label,
                                     data_name.split("/")[1]),
                color=color,
                marker=shape)
        ax.legend(bbox_to_anchor=(1.05, 1), loc="upper left")

if saveFlag:
    myplt.my_savefig(fig, "{}.png".format(saveFlag))
Beispiel #3
0
f.close()

for line in lines:
    line = my_split(line)

    train_loss.append(float(line[1].split(":")[1]))
    test_loss.append(float(line[2].split(":")[1]))

#----------------------
# plot
#----------------------
fig = plt.figure()
ax = fig.add_subplot(111)

x = range(1, len(train_loss) + 1)

ax.plot(x, test_loss, label="test")
ax.plot(x, train_loss, label="train")

ax.set_yscale("log")
ax.grid(which="both")
ax.set_title("loss on each epoch", fontsize=18)
#ax.set_ylim(10**0, 10**3)
ax.set_ylim(10**0, 10**4)
ax.set_xlabel("epoch number", fontsize=15)
ax.set_ylabel("value of loss", fontsize=15)
ax.legend(fontsize=12)

fig.show()
myplt.my_savefig(fig, path + "result.png")