Python 相机镜头

一哥第一卷感叹,这家奥地利~。这是什么g8事件,近盲目安装3g的OpenCV,结果徒劳。

入题。!环境Python2.7

严厉格按照什么步骤。必成功:

所需的软件如下面:

VideoCapture:  http://videocapture.sourceforge.net/VideoCapture-0.9-5.zip

MyEclipse 插件PyDev: http://ncu.dl.sourceforge.net/project/pydev/pydev/PyDev%202.7.1/PyDev%202.7.1.zip

PIL : http://effbot.org/media/downloads/PIL-1.1.7.win32-py2.7.exe

1.      VideoCapture解压后,找到Python27。把里面的东西拷贝到自己安装Python相应文件夹中。建议把Python27外面的src tools啥的仅仅要相应的都复制过去。


2.      PIL直接安装就可以

3.      PyDev解压后直接拷贝到MyEclipse中的dropins。这里的环境配置网上一抓一大把。

环境准备完毕。代码例如以下:

fromVideoCapture import Device

importtime, string

interval= 2

cam =Device(devnum=0, showVideoWindow=0)

#cam.setResolution(648,480)

cam.saveSnapshot('image.jpg',timestamp=3, boldfont=1, quality=75)

i = 0

quant =interval * .1

starttime= time.time()

while 1:

    lasttime = now = int((time.time() -starttime) / interval)

    print i

    cam.saveSnapshot('image.jpg', timestamp=3,boldfont=1)

    i += 1

    while now == lasttime:

        now = int((time.time() - starttime) /interval)

       time.sleep(quant)

直接运行就可以。

试执行,哈哈:

 

具体解释及延伸:

对于DEVICE的各项參数解释官档解释例如以下:

class Device:

    """Create instances of this class which will then representvideo devices.

 

    For the lifetime of the instance, thedevice is blocked, so it can not be

    used by other applications (which is quitenormal Windows behavior).

    If you want to access the device fromanother program, you have to delete

    the instance first (e.g. del cam).

 

    """

    def __init__(self, devnum=0, showVideoWindow=0):

        """devnum: VideoCapture enumerates the available video capture devices

                    on your system.  If you have more than one device, specify

                    the desired one here.  The device number starts from 0.

 

           showVideoWindow: 0 ... do notdisplay a video window (the default)

                            1 ... display avideo window

 

                            Mainly used fordebugging, since the video window

                            can not be closedor moved around.

saveSnapshot的各项參数解释例如以下:

def saveSnapshot(self, filename, timestamp=0, boldfont=0,textpos=default_textpos, **keywords):

        """Saves a snapshot to the harddisk.

 

        The filetype depends on thefilename extension.  Everything that PIL

        can handle can be specified (foo.jpg,foo.gif, foo.bmp, ...).

 

        filename:   String containing the name of the resultingfile.

 

        timestamp:  see getImage()

 

        boldfont:   see getImage()

 

        textpos:    see getImage()

 

        Additional keyword arguments can begive which are just passed to the

        save() method of the Image class.  For example you can specify the

        compression level of a JPEG image byquality=75 (which is the default

        value anyway).

getImage的各项參数解释例如以下:

def getImage(self, timestamp=0, boldfont=0, textpos=default_textpos):

        """Returns a PIL Image instance.

 

        timestamp:  0 ... no timestamp (the default)

                    1 ... simple timestamp

                    2 ... timestamp withshadow

                    3 ... timestamp withoutline

 

        boldfont:   0 ... normal font (the default)

                    1 ... bold font

 

        textpos:    The position of the timestamp can bespecified by a string

                    containing a combination oftwo characters.  One character

                    must be either t or b, theother one either l, c or r.

 

                    t ... top

                    b ... bottom

 

                    l ... left

                    c ... center

                    r ... right

 

                    The default value is 'bl'

自己写的助于理解上述程序的程序:

import time

a=2

b=a*.1

i=0

print b

stime = time.time()

print stime

m=2

while m>i:

   lasttime = now = int((time.time()-stime)/a)

   print ('i is: %s') %i

   i+=1

   print '进入while循环'

   while now ==lasttime:

       now = int((time.time()-stime)/a)

       print (time.time()-stime)/a

       print ('now is: %s') %now

       print ('lasttime is: %s') %lasttime

       if now ==lasttime:

           print ('lasttime == now')

       else:

           print ('lasttime 不等于 now')

       time.sleep(b)

        print '休眠%s第二' %b

版权声明:本文博主原创文章。博客,未经同意不得转载。

原文地址:https://www.cnblogs.com/bhlsheji/p/4882605.html