Пример #1
0
 def configure_gui(self):
     self.erreur=StringVar();self.erreur.set("")
     # Parametre de la camera 
     self.tint=DoubleVar()
     #self.tint.trace("w",self.TintModifie) => def TintModifie(self,*args):
     self.gain=IntVar()
     self.Stop=False
     # ------ Initialisation de la camera
     #self.cam=Camera(guid=2892819673481529) 
     self.cam=Camera(guid=self.guidCam) 
     self.lemodel=self.cam.model.decode()[-5:]
     # acquisition en cours
     self.Acquisition=0
     # axe x: lambda ou pixel:
     self.EnMicron=BooleanVar();self.EnMicron.set(False)
     # fit gaussienne
     self.fitgauss=BooleanVar();self.fitgauss.set(False)
     self.w0=IntVar();self.w0.set(80)
     # borner
     self.borner=BooleanVar();self.borner.set(False)
     self.Pix0=IntVar();self.Pix0.set(0)
     self.Pix1=IntVar();self.Pix1.set(1234)
     #init graph
     self.InitGraph=BooleanVar()
     self.InitGraph.set(True)
     # focale pixel/micron
     self.focale=DoubleVar();self.focale.set(6.6)
     #  Nom de base du Fichier de sauvegarde
     self.Nom=StringVar()
     # le dossier de travail
     self.WorkDir=StringVar()
     self.WorkDir.set(os.getcwd())
     #fichier reference
     self.FichRef=StringVar();self.FichRef.set("!! Ldb non definie !!")
Пример #2
0
def main():
    from optparse import OptionParser
    p = OptionParser()
    # p.add_option()
    p.set_defaults(guid=None)
    o, a = p.parse_args()
    cam = Camera(guid=o.guid)
    cam.power(True)
    setup(cam, mode=2, gain=0, bright=0, shutter=0.01)
    capture(cam, 10)
    cam.power(False)
 def __init__(self):
     F201B = 2892819673575448
     # ------ Initialisation de la camera
     self.cam0 = Camera(guid=F201B)
     #lemodel=cam.model.decode()[-5:]
     self.l4 = PR50CC.rotation()
     print("L4 ok")
     self.bs = BS.BabSoleil()
     print("BS ok")
     self.LHcamera()
     print("LxH={}x{}".format(self.Larg, self.Haut))
Пример #4
0
def main():
    from optparse import OptionParser
    p = OptionParser()
    # p.add_option()
    p.set_defaults(uid=None)
    o, a = p.parse_args()
    cam = Camera(o.uid)
    cam.power(True)
    info(cam)
    print()
    emva1288(cam, r=1000e3 / 20e-3)
    cam.power(False)
Пример #5
0
    def __init__(self, index, type, guid=0000000000000000, buffersize=10):
        self._id = index
        self._type = type
        self._guid = guid
        self._isUpdating = True
        self._isFilterBypassed = True
        self._isObjectDetectionEnabled = False
        self._isSnapshotEnabled = False
        self._detectionAlgorithm = ''
        # data structure: {"filterName", "args"}, defined in the GUI
        # text editor
        self.filterRouting = []

        # instances of Agent class. You can define an array if you have
        # multiple agents.
        # Pass them to *processObjectDetection()*
        self.agent1 = Agent()
        self.agent2 = Agent()

        # drawings
        # data structure: {"drawingName", "args"}, defined in Subthread
        self.drawingRouting = []

        # video writing
        self._isVideoWritingEnabled = False
        self.videoWriter = None

        if self.isFireWire():
            self.cam = Camera(guid=self._guid)
            print("====================================================")
            print("CameraId:", self._id)
            print("Model:", self.cam.model)
            print("GUID:", self.cam.guid)
            print("Mode:", self.cam.mode)
            print("Framerate: ", self.cam.rate)
            print("====================================================")
            self.cam.start_capture(bufsize=buffersize)
            self.cam.start_video()
        else:
            self.cap = cv2.VideoCapture(0)
            if not self.cap.isOpened():
                print('Camera is not detected. End program.')
                self.cap.release()
                sys.exit()

        cv2.namedWindow(self.windowName(), 16)  # cv2.GUI_NORMAL = 16
        cv2.moveWindow(self.windowName(), 600, -320 + 340 * self._id)
        cv2.setMouseCallback(self.windowName(), showClickedCoordinate)
Пример #6
0
def _main(guid, name):
    app = QtGui.QApplication(sys.argv)
    cam = Camera(guid=guid, iso_speed=800)
    main = Main(cam)
    main.setWindowTitle('pyCAM -- %s' % name)

    main.show()
    try:
        main.start_camera()
        time.sleep(.5)
        main.process_images()
        #        cam.img.autoRange()
        #        cam.img.autoLevels()
        #        QtGui.app.instance().exec_()
        status = app.exec_()
    finally:
        main.stop_camera()
        main.deinit_camera()
        sys.exit(status)
Пример #7
0
    def __init__(self, index, type, guid=0000000000000000, buffersize=10):
        self._id = index
        self._type = type
        self._guid = guid
        self._isUpdating = True
        self._isFilterBypassed = True
        self._isObjectDetectionRunning = False
        self._detectionAlgorithm = ''
        self.filterRouting = [
        ]  # data structure: {"filterName", "args"}, defined in the editor
        # define the agents that you want to detect with objectDetection algorithm
        self.agent1 = Agent()
        self.agent2 = Agent()

        if self.isFireWire():
            self.cam = Camera(guid=self._guid)
            print("====================================================")
            print("CameraId:", self._id)
            print("Vendor:", self.cam.vendor)
            print("Model:", self.cam.model)
            print("GUID:", self.cam.guid)
            print("Mode:", self.cam.mode)
            print("Framerate: ", self.cam.rate)
            print("Available modes", [mode.name for mode in self.cam.modes])
            print("====================================================")
            self.cam.start_capture(bufsize=buffersize)
            self.cam.start_video()
        else:
            self.cap = cv2.VideoCapture(0)
            if not self.cap.isOpened():
                print('Camera is not detected. End program.')
                self.cap.release()
                sys.exit()

        cv2.namedWindow(self.windowName(), 16)  # cv2.GUI_NORMAL = 16
        cv2.moveWindow(self.windowName(), 600, -320 + 340 * self._id)
        cv2.setMouseCallback(self.windowName(), showClickedCoordinate)
Пример #8
0
# You should have received a copy of the GNU Lesser General Public
# License along with pydc1394.  If not, see
# <http://www.gnu.org/licenses/>.
#
# Copyright (C) 2009, 2010 by Holger Rapp <*****@*****.**>
# and the pydc1394 contributors (see README File)



import sys
from time import sleep
from pydc1394 import Camera
import Image

print("Opening camera!")
cam0 = Camera()

print("Vendor:", cam0.vendor)
print("Model:", cam0.model)
print("GUID:", cam0.guid)
print("Mode:", cam0.mode)
print("Framerate: ", cam0.rate)
print("Available modes", cam0.modes)
print("Available features", cam0.features)

#those can be automated, the other are manual
try:
    cam0.brightness.mode = 'auto'
    cam0.exposure.mode = 'auto'
    cam0.white_balance.mode = 'auto'
except AttributeError: # thrown if the camera misses one of the features
Пример #9
0
    def __init__(self,
                 field,
                 index,
                 type,
                 guid=0000000000000000,
                 buffersize=10):
        self._field = field
        self._id = index
        self._type = type
        self._guid = guid
        self._isUpdating = True
        self._isFilterBypassed = True
        self._isObjectDetectionEnabled = False
        self._isSnapshotEnabled = False
        self._detectionAlgorithm = ''
        self.filterRouting = [
        ]  # data structure: {"filterName", "args"}, defined in the GUI text editor
        self.frameCounter = 0

        # instances of Agent class. You can define an array if you have multiple agents.
        # Pass them to *processObjectDetection()*
        self.agent = [Agent(), Agent(), Agent(), Agent()]

        # drawings
        self._isFieldDrawingEnabled = True  # draw field indicators
        self._isAgentDrawingEnabled = True  # draw separation vector and COM for agents
        self._isCOMDrawingEnabled = True
        self.drawingRouting = [
        ]  # data structure: {"drawingName", "args"}, defined in Subthread

        # video writing
        self._isVideoWritingEnabled = False
        self.videoWriter = None

        # desired separation and desired orientation
        self.separation = None
        self.orientation = None
        self.psi_local = None
        self.time = 0
        self.desiredX = None
        self.desiredY = None
        self.COMx = None
        self.COMy = None

        if self.isFireWire():
            self.cam = Camera(guid=self._guid)
            print("====================================================")
            print("CameraId:", self._id)
            print("Model:", self.cam.model)
            print("GUID:", self.cam.guid)
            print("Mode:", self.cam.mode)
            print("Framerate: ", self.cam.rate)
            print("====================================================")
            self.cam.start_capture(bufsize=buffersize)
            self.cam.start_video()
        else:
            self.cap = cv2.VideoCapture('rotor_Mar6.mp4')
            if not self.cap.isOpened():
                print('Camera is not detected. End program.')
                self.cap.release()
                sys.exit()

        cv2.namedWindow(self.windowName(), 16)  # cv2.GUI_NORMAL = 16
        cv2.moveWindow(self.windowName(), 100, -320 + 340 * self._id)
        cv2.setMouseCallback(self.windowName(), showClickedCoordinate)
Пример #10
0
                break
        if frame is None:
            return
        im = frame.copy().T
        frame.enqueue()
        self.img.setImage(
            im, autoRange=False, autoLevels=False, autoHistogramRange=False
        )

    def stop_camera(self):
        self.camera.stop_video()
        self.camera.stop_capture()

    def deinit_camera(self):
        pass


if __name__ == "__main__":
    app = QtGui.QApplication([])
    cam = CameraPlot(Camera())
    try:
        cam.start_camera()
        time.sleep(0.5)
        cam.process_images()
        cam.img.autoRange()
        cam.img.autoLevels()
        QtGui.QApplication.instance().exec_()
    finally:
        cam.stop_camera()
        cam.deinit_camera()
Пример #11
0
#--------------------------------
# Les frames d'entrées
from pydc1394 import Camera
# la camera est appellée par son uid
#pour l'avoir:
#from pydc1394.camera2 import Context
#for c in Context().cameras:
#    print(c)
#(2892819673481529, 0) => F146B
#(2892819673575448, 0) => F201B

#from FakeCamera import Camera
F201B = 2892819673575448
guidCam = F201B
cam = Camera(guid=guidCam)
lemodel = cam.model.decode()[-5:]
w0 = 80

bs = BS.BabSoleil()

cam.start_capture()
Npts = 70
step = 0.001
AngleStart = 0.21
data = np.zeros((Npts, 2))
bs.VaLbda(AngleStart)
time.sleep(0.2)

for i in range(Npts):
    #capture une frame et la copy dans CamArray