mirror of
https://github.com/openmv/openmv.git
synced 2025-11-04 14:49:50 +08:00
Moved feature detection scripts into their own folders and added explict frame_skip value per Ibrahim's request. Finished working on snapshot and video recording scripts for next release. ... From CMUcam4 work I learned that people will just want examples that do "X" thing. So, in general, our examples should include a simple script showing off a feature and then a more complex script that does "X" where "X" is some app that a person would want. For example, we'll get reuqests for face tracking with servos, and movement detection with servos. So, instead of answering this question a million times with an example script we'll just have examples for all kinds of things people will want. Gotta automate dealing with help support at the end of the day...
38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
# GIF Video Recording Example
|
|
#
|
|
# Note: You will need an SD card to run this example.
|
|
#
|
|
# You can use your OpenMV Cam to record gif files. You can either feed the
|
|
# recorder object RGB565 frames or Grayscale frames. Use photo editing software
|
|
# like GIMP to compress and optimize the Gif before uploading it to the web.
|
|
|
|
import sensor, image, time, gif, pyb
|
|
|
|
RED_LED_PIN = 1
|
|
BLUE_LED_PIN = 3
|
|
|
|
sensor.reset() # Initialize the camera sensor.
|
|
sensor.set_pixformat(sensor.RGB565) # or sensor.GRAYSCALE
|
|
sensor.set_framesize(sensor.QQVGA) # or sensor.QVGA (or others)
|
|
sensor.skip_frames(10) # Let new settings take affect.
|
|
clock = time.clock() # Tracks FPS.
|
|
|
|
pyb.LED(RED_LED_PIN).on()
|
|
sensor.skip_frames(30) # Give the user time to get ready.
|
|
|
|
pyb.LED(RED_LED_PIN).off()
|
|
pyb.LED(BLUE_LED_PIN).on()
|
|
|
|
g = gif.Gif("example.gif", loop=True)
|
|
|
|
print("You're on camera!")
|
|
for i in range(100):
|
|
clock.tick()
|
|
# clock.avg() returns the milliseconds between frames - gif delay is in
|
|
g.add_frame(sensor.snapshot(), delay=int(clock.avg()/10)) # centiseconds.
|
|
print(clock.fps())
|
|
|
|
g.close()
|
|
pyb.LED(BLUE_LED_PIN).off()
|
|
print("Done! Reset the camera to see the saved recording.")
|