コード例 #1
0
 def record(self):
     """Start or end recording
     """
     if self.camera.is_recording:
         self.camera.stop_recording()
         self.rec_button.setText('&Rec')
         self.rec_act.setText('&Record')
         self.write_text("save : {}".format(self.video_filename))
     else:
         self.video_filename = FileIO.get_filename(self.filename_rule, self.video_suffix, self.parent_dir)
         self.camera.start_recording(self.video_filename, self.video_codec)
         self.rec_button.setText('Stop rec')
         self.rec_act.setText('Stop record')
コード例 #2
0
    def save_frame(self):
        """Save the frame on the window as an image.
        """
        if self.filename_rule == "Manual":
            self.save_frame_manual()
            if not self.filename:
                return None
            prm = re.sub(r"\.(.*)", ".csv", str(self.filename))
        else:
            self.filename = FileIO.get_filename(self.filename_rule, self.image_suffix, self.parent_dir)
            prm = str(self.filename).replace(self.image_suffix, "csv")

        if not self.dst.exists():
            self.dst.mkdir(parents=True)
        im = Image.fromarray(self.camera.frame)
        im.save(self.filename)

        # make a parameter file
        with open(prm, "w") as f:
            for name, key in self.current_params.items():
                f.write("{},{}\n".format(name, self.current_params[name]["value"]))

        self.write_text("{:<10}: {}".format("save image", self.filename))
        self.write_text("{:<10}: {}".format("save param", prm))