{"id":4296,"date":"2013-05-28T07:19:55","date_gmt":"2013-05-28T07:19:55","guid":{"rendered":"http:\/\/178.62.14.192\/?p=4296"},"modified":"2013-05-28T07:19:55","modified_gmt":"2013-05-28T07:19:55","slug":"motion-detection-with-the-raspberrypi-camera-and-python","status":"publish","type":"post","link":"https:\/\/www.recantha.co.uk\/blog\/?p=4296","title":{"rendered":"Motion detection with the #RaspberryPi camera and Python"},"content":{"rendered":"<p>Foundation forum member &#8216;<strong>brainflakes<\/strong>&#8216; has managed to write a Python script to take and analyse images from the Raspberry Pi camera module in order to detect movement. He explains what it does on the <a href=\"http:\/\/www.raspberrypi.org\/phpBB3\/viewtopic.php?f=43&amp;t=45235&amp;p=358428\">forum<\/a>:<\/p>\n<blockquote><p>While watching for motion it pipes a thumbnail image from raspistill at around 1fps to analyse (it keeps everything in memory to avoid wearing out the SD card). Once motion is detected it calls raspistill again to write a high-res jpeg to disk.<\/p>\n<p>It also checks free disk space and if under a set limit it starts to delete the oldest images to make sure there is always enough free space for new images.<\/p>\n<p>While running on my rev1 B it consumes around 12% CPU \/ 4% ram and manages to capture a full size image once ever 2-3 secs.<\/p>\n<p>If you need to install PIL run &#8220;sudo aptitude install python-imaging-tk&#8221;<\/p><\/blockquote>\n<p>Here&#8217;s the script:<\/p>\n<pre>import StringIO\nimport subprocess\nimport os\nimport time\nfrom datetime import datetime\nfrom PIL import Image\n\n# Motion detection settings:\n# Threshold (how much a pixel has to change by to be marked as \"changed\")\n# Sensitivity (how many changed pixels before capturing an image)\n# ForceCapture (whether to force an image to be captured every forceCaptureTime seconds)\nthreshold = 10\nsensitivity = 20\nforceCapture = True\nforceCaptureTime = 60 * 60 # Once an hour\n\n# File settings\nsaveWidth = 1280\nsaveHeight = 960\ndiskSpaceToReserve = 40 * 1024 * 1024 # Keep 40 mb free on disk\n\n# Capture a small test image (for motion detection)\ndef captureTestImage():\ncommand = \"raspistill -w %s -h %s -t 0 -e bmp -o -\" % (100, 75)\nimageData = StringIO.StringIO()\nimageData.write(subprocess.check_output(command, shell=True))\nimageData.seek(0)\nim = Image.open(imageData)\nbuffer = im.load()\nimageData.close()\nreturn im, buffer\n\n# Save a full size image to disk\ndef saveImage(width, height, diskSpaceToReserve):\nkeepDiskSpaceFree(diskSpaceToReserve)\ntime = datetime.now()\nfilename = \"capture-%04d%02d%02d-%02d%02d%02d.jpg\" % (time.year, time.month, time.day, time.hour, time.minute, time.second)\nsubprocess.call(\"raspistill -w 1296 -h 972 -t 0 -e jpg -q 15 -o %s\" % filename, shell=True)\nprint \"Captured %s\" % filename\n\n# Keep free space above given level\ndef keepDiskSpaceFree(bytesToReserve):\nif (getFreeSpace() &lt; bytesToReserve): for filename in sorted(os.listdir(\".\")): if filename.startswith(\"capture\") and filename.endswith(\".jpg\"): os.remove(filename) print \"Deleted %s to avoid filling disk\" % filename if (getFreeSpace() &gt; bytesToReserve):\nreturn\n\n# Get available disk space\ndef getFreeSpace():\nst = os.statvfs(\".\")\ndu = st.f_bavail * st.f_frsize\nreturn du\n\n# Get first image\nimage1, buffer1 = captureTestImage()\n\n# Reset last capture time\nlastCapture = time.time()\n\nwhile (True):\n\n# Get comparison image\nimage2, buffer2 = captureTestImage()\n\n# Count changed pixels\nchangedPixels = 0\nfor x in xrange(0, 100):\nfor y in xrange(0, 75):\n# Just check green channel as it's the highest quality channel\npixdiff = abs(buffer1[x,y][1] - buffer2[x,y][1])\nif pixdiff &gt; threshold:\nchangedPixels += 1\n\n# Check force capture\nif forceCapture:\nif time.time() - lastCapture &gt; forceCaptureTime:\nchangedPixels = sensitivity + 1\n\n# Save an image if pixels changed\nif changedPixels &gt; sensitivity:\nlastCapture = time.time()\nsaveImage(saveWidth, saveHeight, diskSpaceToReserve)\n\n# Swap comparison buffers\nimage1 = image2\nbuffer1 = buffer2<\/pre>\n<p>Many thanks to brainflakes for this &#8211; fantastic to see people getting stuck in with some useful applications for the camera<\/p>\n<p><a href=\"http:\/\/www.raspberrypi.org\/phpBB3\/viewtopic.php?f=43&amp;t=45235&amp;p=358428#p358428\">Read the original post on the Raspberry Pi Foundation forum<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Foundation forum member &#8216;brainflakes&#8216; has managed to write a Python script to take and analyse images from the Raspberry Pi camera module in order to detect movement. He explains what it does on the forum: While watching for motion it&hellip;<\/p>\n<p class=\"more-link-p\"><a class=\"more-link\" href=\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\">Read more &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[8,36],"tags":[],"class_list":["post-4296","post","type-post","status-publish","format-standard","hentry","category-camera-module","category-photography"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Motion detection with the #RaspberryPi camera and Python - Raspberry Pi Pod<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Motion detection with the #RaspberryPi camera and Python - Raspberry Pi Pod\" \/>\n<meta property=\"og:description\" content=\"Foundation forum member &#8216;brainflakes&#8216; has managed to write a Python script to take and analyse images from the Raspberry Pi camera module in order to detect movement. He explains what it does on the forum: While watching for motion it&hellip;Read more &rarr;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\" \/>\n<meta property=\"og:site_name\" content=\"Raspberry Pi Pod\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/recantha\/\" \/>\n<meta property=\"article:published_time\" content=\"2013-05-28T07:19:55+00:00\" \/>\n<meta name=\"author\" content=\"Michael Horne\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@recantha\" \/>\n<meta name=\"twitter:site\" content=\"@recantha\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Michael Horne\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=4296#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\"},\"author\":{\"name\":\"Michael Horne\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263\"},\"headline\":\"Motion detection with the #RaspberryPi camera and Python\",\"datePublished\":\"2013-05-28T07:19:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\"},\"wordCount\":186,\"commentCount\":5,\"publisher\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#organization\"},\"articleSection\":[\"Camera module\",\"Photography\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.recantha.co.uk\/blog\/?p=4296#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\",\"url\":\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\",\"name\":\"Motion detection with the #RaspberryPi camera and Python - Raspberry Pi Pod\",\"isPartOf\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#website\"},\"datePublished\":\"2013-05-28T07:19:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=4296#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.recantha.co.uk\/blog\/?p=4296\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=4296#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.recantha.co.uk\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Motion detection with the #RaspberryPi camera and Python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#website\",\"url\":\"https:\/\/www.recantha.co.uk\/blog\/\",\"name\":\"Raspberry Pi Pod\",\"description\":\"Experiences with the Raspberry Pi micro computer and microcontroller\",\"publisher\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.recantha.co.uk\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#organization\",\"name\":\"Raspberry Pi Pod\",\"url\":\"https:\/\/www.recantha.co.uk\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1\",\"width\":800,\"height\":337,\"caption\":\"Raspberry Pi Pod\"},\"image\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/recantha\/\",\"https:\/\/x.com\/recantha\",\"https:\/\/www.linkedin.com\/in\/recantha\/\",\"https:\/\/www.youtube.com\/channel\/UCK4F9blabxzmk8Inzhs8tpg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263\",\"name\":\"Michael Horne\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g\",\"caption\":\"Michael Horne\"},\"url\":\"https:\/\/www.recantha.co.uk\/blog\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Motion detection with the #RaspberryPi camera and Python - Raspberry Pi Pod","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.recantha.co.uk\/blog\/?p=4296","og_locale":"en_US","og_type":"article","og_title":"Motion detection with the #RaspberryPi camera and Python - Raspberry Pi Pod","og_description":"Foundation forum member &#8216;brainflakes&#8216; has managed to write a Python script to take and analyse images from the Raspberry Pi camera module in order to detect movement. He explains what it does on the forum: While watching for motion it&hellip;Read more &rarr;","og_url":"https:\/\/www.recantha.co.uk\/blog\/?p=4296","og_site_name":"Raspberry Pi Pod","article_publisher":"https:\/\/www.facebook.com\/recantha\/","article_published_time":"2013-05-28T07:19:55+00:00","author":"Michael Horne","twitter_card":"summary_large_image","twitter_creator":"@recantha","twitter_site":"@recantha","twitter_misc":{"Written by":"Michael Horne","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.recantha.co.uk\/blog\/?p=4296#article","isPartOf":{"@id":"https:\/\/www.recantha.co.uk\/blog\/?p=4296"},"author":{"name":"Michael Horne","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263"},"headline":"Motion detection with the #RaspberryPi camera and Python","datePublished":"2013-05-28T07:19:55+00:00","mainEntityOfPage":{"@id":"https:\/\/www.recantha.co.uk\/blog\/?p=4296"},"wordCount":186,"commentCount":5,"publisher":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#organization"},"articleSection":["Camera module","Photography"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.recantha.co.uk\/blog\/?p=4296#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.recantha.co.uk\/blog\/?p=4296","url":"https:\/\/www.recantha.co.uk\/blog\/?p=4296","name":"Motion detection with the #RaspberryPi camera and Python - Raspberry Pi Pod","isPartOf":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#website"},"datePublished":"2013-05-28T07:19:55+00:00","breadcrumb":{"@id":"https:\/\/www.recantha.co.uk\/blog\/?p=4296#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.recantha.co.uk\/blog\/?p=4296"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.recantha.co.uk\/blog\/?p=4296#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.recantha.co.uk\/blog"},{"@type":"ListItem","position":2,"name":"Motion detection with the #RaspberryPi camera and Python"}]},{"@type":"WebSite","@id":"https:\/\/www.recantha.co.uk\/blog\/#website","url":"https:\/\/www.recantha.co.uk\/blog\/","name":"Raspberry Pi Pod","description":"Experiences with the Raspberry Pi micro computer and microcontroller","publisher":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.recantha.co.uk\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.recantha.co.uk\/blog\/#organization","name":"Raspberry Pi Pod","url":"https:\/\/www.recantha.co.uk\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1","width":800,"height":337,"caption":"Raspberry Pi Pod"},"image":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/recantha\/","https:\/\/x.com\/recantha","https:\/\/www.linkedin.com\/in\/recantha\/","https:\/\/www.youtube.com\/channel\/UCK4F9blabxzmk8Inzhs8tpg"]},{"@type":"Person","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263","name":"Michael Horne","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g","caption":"Michael Horne"},"url":"https:\/\/www.recantha.co.uk\/blog\/?author=1"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p2RsaV-17i","jetpack-related-posts":[{"id":11388,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=11388","url_meta":{"origin":4296,"position":0},"title":"Create a time lapse in Python with the Raspberry Pi","author":"Michael Horne","date":"8 November 2014","format":false,"excerpt":"Normally if you want to do a timelapse with the Pi camera, you just use the raspistill command with the -tl parameter. However, Richard (aka the Average Man) wanted to do it programmatically so he could update an LCD screen during the process. If you want to do this yourself,\u2026","rel":"","context":"In &quot;Camera module&quot;","block_context":{"text":"Camera module","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=8"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/3.bp.blogspot.com\/-5Y-44x6Rc4k\/VF1wmcLeAxI\/AAAAAAAAEec\/k9up8xA0S0Q\/s1600\/IMG_20141009_193901.jpg?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/3.bp.blogspot.com\/-5Y-44x6Rc4k\/VF1wmcLeAxI\/AAAAAAAAEec\/k9up8xA0S0Q\/s1600\/IMG_20141009_193901.jpg?resize=350%2C200 1x, https:\/\/i0.wp.com\/3.bp.blogspot.com\/-5Y-44x6Rc4k\/VF1wmcLeAxI\/AAAAAAAAEec\/k9up8xA0S0Q\/s1600\/IMG_20141009_193901.jpg?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/3.bp.blogspot.com\/-5Y-44x6Rc4k\/VF1wmcLeAxI\/AAAAAAAAEec\/k9up8xA0S0Q\/s1600\/IMG_20141009_193901.jpg?resize=700%2C400 2x, https:\/\/i0.wp.com\/3.bp.blogspot.com\/-5Y-44x6Rc4k\/VF1wmcLeAxI\/AAAAAAAAEec\/k9up8xA0S0Q\/s1600\/IMG_20141009_193901.jpg?resize=1050%2C600 3x, https:\/\/i0.wp.com\/3.bp.blogspot.com\/-5Y-44x6Rc4k\/VF1wmcLeAxI\/AAAAAAAAEec\/k9up8xA0S0Q\/s1600\/IMG_20141009_193901.jpg?resize=1400%2C800 4x"},"classes":[]},{"id":19335,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=19335","url_meta":{"origin":4296,"position":1},"title":"Get your very own Raspberry Pi-powered 3D, stereoscopic camera with this crowdfunding campaign","author":"Michael Horne","date":"31 January 2019","format":false,"excerpt":"A team from St Petersburg have developed a brand new Raspberry Pi-powered board that enables you to use two Pi cameras at once. Called Stereo Pi, the board is a Compute Module carrier that takes any model of the Compute Module and breaks out two CSI interfaces into which you\u2026","rel":"","context":"In &quot;Camera module&quot;","block_context":{"text":"Camera module","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=8"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2019\/01\/stereopi-top-cameras-2_jpg_project-body.jpg?fit=749%2C476&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2019\/01\/stereopi-top-cameras-2_jpg_project-body.jpg?fit=749%2C476&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2019\/01\/stereopi-top-cameras-2_jpg_project-body.jpg?fit=749%2C476&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2019\/01\/stereopi-top-cameras-2_jpg_project-body.jpg?fit=749%2C476&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":4368,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=4368","url_meta":{"origin":4296,"position":2},"title":"OCR with the #RaspberryPi camera","author":"Michael Horne","date":"31 May 2013","format":false,"excerpt":"Over on the Foundation forum, \"mikerr\" has worked out how to translate an image of text taken with raspistill into a text file.\u00a0Read more here","rel":"","context":"In &quot;Camera module&quot;","block_context":{"text":"Camera module","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=8"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":8796,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=8796","url_meta":{"origin":4296,"position":3},"title":"New camera mode announced for the #RaspberryPi camera module","author":"Michael Horne","date":"18 March 2014","format":false,"excerpt":"James Hughes, the author of the camera module software (raspistill and raspivid) has just announced, via the Foundation's blog, that there are several new modes available for the camera: 2592\u00d71944 1-15fps, video or stills mode, Full sensor full FOV, default stills capture 1920\u00d71080 1-30fps, video mode, 1080p30 cropped 1296\u00d7972 1-42fps,\u2026","rel":"","context":"In &quot;Camera module&quot;","block_context":{"text":"Camera module","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=8"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.modmypi.com\/image\/cache\/data\/raspberry-pi-expansion-boards\/raspberry-pi\/raspberry-pi-camera-board-close-800x800.JPG?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.modmypi.com\/image\/cache\/data\/raspberry-pi-expansion-boards\/raspberry-pi\/raspberry-pi-camera-board-close-800x800.JPG?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.modmypi.com\/image\/cache\/data\/raspberry-pi-expansion-boards\/raspberry-pi\/raspberry-pi-camera-board-close-800x800.JPG?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.modmypi.com\/image\/cache\/data\/raspberry-pi-expansion-boards\/raspberry-pi\/raspberry-pi-camera-board-close-800x800.JPG?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":4801,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=4801","url_meta":{"origin":4296,"position":4},"title":"Use Zoneminder on the #RaspberryPi with the camera module","author":"Michael Horne","date":"25 June 2013","format":false,"excerpt":"Over on the Foundation forum, a chap called 'jimmyst' has been working on getting Linux-based security surveillance software\u00a0Zoneminder to work with the Raspberry Pi camera module. Here's what he wrote... Here is some progress I made on using Raspberry Pi camera as an IP camera for Zoneminder. I decided to\u2026","rel":"","context":"In &quot;Camera module&quot;","block_context":{"text":"Camera module","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=8"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.zoneminder.com\/sites\/zoneminder.com\/files\/ZoneMinderSmall.gif?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":9280,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=9280","url_meta":{"origin":4296,"position":5},"title":"How to take basic photos and video with your #RaspberryPi camera module","author":"Michael Horne","date":"10 April 2014","format":false,"excerpt":"The Average Man continues his series on the camera module with a tutorial on using the raspistill and raspivid commands to take stills and video. Read how to do it here","rel":"","context":"In &quot;Camera module&quot;","block_context":{"text":"Camera module","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=8"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.kitware.com\/blog\/files\/6_1326725183.jpg?resize=350%2C200","width":350,"height":200},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4296","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4296"}],"version-history":[{"count":0,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4296\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4296"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4296"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4296"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}