home-assistant.github.io/components/openalpr/index.html
2016-12-06 08:23:42 +00:00

315 lines
No EOL
15 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>OpenAlpr - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to integrate licences plates with OpenAlpr into Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/components/openalpr/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="OpenAlpr">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/components/openalpr/">
<meta property="og:type" content="article">
<meta property="og:description" content="Instructions how to integrate licences plates with OpenAlpr into Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="OpenAlpr">
<meta name="twitter:description" content="Instructions how to integrate licences plates with OpenAlpr into Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
OpenAlpr
</h1>
</header>
<hr class="divider">
<p><a href="http://www.openalpr.com/">OpenAlpr</a> integration for Home Assistant allows you to process licences plates from a camera. You can use them to open a garage door or trigger any other <a href="https://home-assistant.io/components/automation/">automation</a>.</p>
<p class="note">
If you want use a video stream. You need setup the <a href="/components/ffmpeg">ffmpeg</a> component. See also there for troubleshooting local ffmpeg installation.
</p>
<h3><a class="title-link" name="local-installation" href="#local-installation"></a> Local installation</h3>
<p>If you want process all data local you need the command line tool <code class="highlighter-rouge">alpr</code> in version &gt; 2.3.1</p>
<p>If you dont find binaries for your distribution you can compile from source. Documention of how to build openalpr is found <a href="https://github.com/openalpr/openalpr/wiki">here</a>.</p>
<p>On a debian system you can use this cmake command to build only the command line tool (which second part on linux build instruction - ubuntu 14.04+):</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code>cmake -DWITH_TEST<span class="o">=</span>FALSE -DWITH_BINDING_JAVA<span class="o">=</span>FALSE --DWITH_BINDING_PYTHON<span class="o">=</span>FALSE --DWITH_BINDING_GO<span class="o">=</span>FALSE -DWITH_DAEMON<span class="o">=</span>FALSE -DCMAKE_INSTALL_PREFIX:PATH<span class="o">=</span>/usr ..
</code></pre>
</div>
<p>Verify your alpr installation with:</p>
<div class="highlighter-rouge"><pre class="highlight"><code>wget -O- -q http://plates.openalpr.com/h786poj.jpg | alpr -
</code></pre>
</div>
<h3><a class="title-link" name="configuration-home-assistant" href="#configuration-home-assistant"></a> Configuration Home Assistant</h3>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">openalpr</span><span class="pi">:</span>
<span class="s">engine</span><span class="pi">:</span> <span class="s">local</span>
<span class="s">region</span><span class="pi">:</span> <span class="s">eu</span>
<span class="s">confidence</span><span class="pi">:</span> <span class="s">80.0</span>
<span class="s">entities</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">name</span><span class="pi">:</span> <span class="s">Camera garage 1</span>
<span class="s">interval</span><span class="pi">:</span> <span class="s">5</span>
<span class="s">render</span><span class="pi">:</span> <span class="s">ffmpeg</span>
<span class="s">input</span><span class="pi">:</span> <span class="s">INPUT_STREAM</span>
<span class="s">extra_arguments</span><span class="pi">:</span> <span class="s">SOME OTHER FFMPEG STUFF</span>
<span class="pi">-</span> <span class="s">name</span><span class="pi">:</span> <span class="s">Camera garage 2</span>
<span class="s">interval</span><span class="pi">:</span> <span class="s">5</span>
<span class="s">render</span><span class="pi">:</span> <span class="s">image</span>
<span class="s">input</span><span class="pi">:</span> <span class="s">https://camera_ip/still_image.jpg</span>
<span class="s">username</span><span class="pi">:</span> <span class="s">admin</span>
<span class="s">password</span><span class="pi">:</span> <span class="s">bla</span>
</code></pre>
</div>
<p>Configuration variables:</p>
<ul>
<li><strong>engine</strong> (<em>Required</em>): <code class="highlighter-rouge">local</code> or <code class="highlighter-rouge">cloud</code> for processing</li>
<li><strong>region</strong> (<em>Required</em>): Country or region. List of Supported <a href="https://github.com/openalpr/openalpr/tree/master/runtime_data/config">value</a>.</li>
<li><strong>confidence</strong> (<em>Optional</em>): Default 80. The minimum of confidence in percent to process with Home-Assistant.</li>
<li><strong>entities</strong> (<em>Required</em>): A list of device to add in Home-Assistant.</li>
<li><strong>name</strong> (<em>Optional</em>): This parameter allows you to override the name of your openalpr entity.</li>
<li><strong>interval</strong> (<em>Optional</em>): Default 2. Time in seconds to poll a picture. If the interval is 0 It dont poll and it only process data with <code class="highlighter-rouge">openalpr.scan</code> service.</li>
<li><strong>render</strong> (<em>Optional</em>): default is with ffmpeg. How is Home-Assistant to get a picture from. It support <code class="highlighter-rouge">ffmpeg</code> for video streams and <code class="highlighter-rouge">image</code> for a still image.</li>
<li><strong>input</strong> (<em>Required</em>): The source from getting pictures. With ffmpeg it could by all supported input. Image only support a url.</li>
<li><strong>extra_arguments</strong> (<em>Optional</em>): Only available with ffmpeg.</li>
<li><strong>username</strong> (<em>Optional</em>): Only available with image for http authentification.</li>
<li><strong>password</strong> (<em>Optional</em>): Only available with image for http authentification.</li>
</ul>
<h3><a class="title-link" name="configuration-home-assistant-local-processing" href="#configuration-home-assistant-local-processing"></a> Configuration Home Assistant local processing</h3>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">openalpr</span><span class="pi">:</span>
<span class="s">engine</span><span class="pi">:</span> <span class="s">local</span>
<span class="s">region</span><span class="pi">:</span> <span class="s">eu</span>
<span class="s">alpr_binary</span><span class="pi">:</span> <span class="s">/usr/bin/alpr</span>
<span class="s">entities</span><span class="pi">:</span>
<span class="nn">...</span>
</code></pre>
</div>
<p>Configuration variables:</p>
<ul>
<li><strong>alpr_binary</strong> (<em>Optional</em>): Default <code class="highlighter-rouge">alpr</code>. The command line tool alpr from OpenAlpr software for local processing.</li>
</ul>
<h3><a class="title-link" name="configuration-home-assistant-cloud-processing" href="#configuration-home-assistant-cloud-processing"></a> Configuration Home Assistant cloud processing</h3>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">openalpr</span><span class="pi">:</span>
<span class="s">engine</span><span class="pi">:</span> <span class="s">cloud</span>
<span class="s">region</span><span class="pi">:</span> <span class="s">eu</span>
<span class="s">api_key</span><span class="pi">:</span> <span class="s">SK_AAABBBBCCCEEEE</span>
<span class="s">entities</span><span class="pi">:</span>
<span class="nn">...</span>
</code></pre>
</div>
<p>Configuration variables:</p>
<ul>
<li><strong>api_key</strong> (<em>Required</em>): You need a api key from <a href="https://cloud.openalpr.com/">OpenAlpr Cloud</a>.</li>
</ul>
<h4><a class="title-link" name="service" href="#service"></a> Service</h4>
<ul>
<li><code class="highlighter-rouge">openalpr.scan</code>: Scan immediately a picture from input.</li>
<li><code class="highlighter-rouge">openalpr.restart</code>: Restart a ffmpeg process</li>
</ul>
<h4><a class="title-link" name="events" href="#events"></a> Events</h4>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml automation entry</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Open garage door</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">Event_type</span><span class="pi">:</span> <span class="s">openalpr.found</span>
<span class="s">Event_data</span><span class="pi">:</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">openalpr.camera_garage_1</span>
<span class="s">plate</span><span class="pi">:</span> <span class="s">BE2183423</span>
<span class="nn">...</span>
</code></pre>
</div>
<p>This event is trigger after openalpr found a new licence plate.</p>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/_components/openalpr.markdown'>Edit this page on GitHub</a></div>
<div class='brand-logo-container section'>
<img src='/images/supported_brands/openalpr.png' />
</div>
<div class='section'>
IoT class<sup><a href='/blog/2016/02/12/classifying-the-internet-of-things/#classifiers'><i class="icon-info-sign"></i></a></sup>: Local Push
</div>
<div class='section'>
Introduced in release: 0.29
</div>
<div class='section'>
<h1 class="title delta">Category Automation</h1>
<ul class='divided'>
<li>
<a href='/components/automation/'>Automation</a>
</li>
<li>
<a href='/components/switch.flux/'>Flux Light Adjustment</a>
</li>
<li>
<a href='/components/hdmi_cec/'>HDMI CEC</a>
</li>
<li>
<a href='/components/ifttt/'>IFTTT</a>
</li>
<li>
<a href='/components/input_boolean/'>Input Boolean</a>
</li>
<li>
<a href='/components/input_select/'>Input Select</a>
</li>
<li>
<a href='/components/input_slider/'>Input Slider</a>
</li>
<li>
<a href='/components/keyboard/'>Keyboard</a>
</li>
<li>
<a href='/components/lirc/'>LIRC</a>
</li>
<li>
OpenAlpr
</li>
<li>
<a href='/components/device_sun_light_trigger/'>Presence based lights</a>
</li>
<li>
<a href='/components/proximity/'>Proximity</a>
</li>
<li>
<a href='/components/script/'>Scripts</a>
</li>
<li>
<a href='/components/shell_command/'>Shell command</a>
</li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>