Recipes to help you build computer vision applications that make the most of the popular C++ library OpenCV 3 About This Book Written to the latest, gold-standard specification of OpenCV 3 Master OpenCV, the open source library of the computer vision community Master fundamental concepts in computer vision and image processing Learn about the important classes and functions of OpenCV with complete working examples applied to real images Who This Book Is For OpenCV 3 Computer Vision Application Programming Cookbook Third Edition is appropriate for novice C++ programmers who want to learn how to use the OpenCV library to build computer vision applications. It is also suitable for professional software developers who wish to be introduced to the concepts of computer vision programming. It can also be used as a companion book for university-level computer vision courses. It constitutes an excellent reference for graduate students and researchers in image processing and computer vision. What You Will Learn Install and create a program using the OpenCV library Process an image by manipulating its pixels Analyze an image using histograms Segment images into homogenous regions and extract meaningful objects Apply image filters to enhance image content Exploit the image geometry in order to relay different views of a pictured scene Calibrate the camera from different image observations Detect people and objects in images using machine learning techniques Reconstruct a 3D scene from images In Detail Making your applications see has never been easier with OpenCV. With it, you can teach your robot how to follow your cat, write a program to correctly identify the members of One Direction, or even help you find the right colors for your redecoration. OpenCV 3 Computer Vision Application Programming Cookbook Third Edition provides a complete introduction to the OpenCV library and explains how to build your first computer vision program. You will be presented with a variety of computer vision algorithms and exposed to important concepts in image and video analysis that will enable you to build your own computer vision applications. This book helps you to get started with the library, and shows you how to install and deploy the OpenCV library to write effective computer vision applications following good programming practices. You will learn how to read and write images and manipulate their pixels. Different techniques for image enhancement and shape analysis will be presented. You will learn how to detect specific image features such as lines, circles or corners. You will be introduced to the concepts of mathematical morphology and image filtering. The most recent methods for image matching and object recognition are described, and you'll discover how to process video from files or cameras, as well as how to detect and track moving objects. Techniques to achieve camera calibration and perform multiple-view analysis will also be explained. Finally, you'll also get acquainted with recent approaches in machine learning and object classification. Style and approach This book will arm you with the basics you need to start writing world-aware applications right from a pixel level all the way through to processing video sequences.
Bildverstehen, Bilder und die ihnen zugrundeliegenden Szenen mit den darin vorkommenden Objekten verstehen und beschreiben, das bedeutet aus der Sicht der Informatik: Sehen mit dem Computer - ‘Computer Vision’. Das Buch behandelt neben wichtigen Merkmalen des menschlichen visuellen Systems auch die nötigen Grundlagen aus digitaler Bildverarbeitung und aus künstlicher Intelligenz. Im Zentrum steht die schrittweise Entwicklung eines neuen Systemmodells für Bildverstehen, anhand dessen verschiedene "Abstraktionsebenen" des maschinellen Sehens, wie Segmentation, Gruppierung auf Aufbau einer Szenenbeschreibung besprochen werden. Das Buch bietet außerdem einen Überblick über gegenwärtige Trends in der Forschung sowie eine sehr aktuelle und ausführliche Bibliographie dieses Fachgebietes. Es liegt hiermit erstmalig eine abgeschlossene, systematische Darstellung dieses noch jungen und in dynamischer Entwicklung begriffenen Fachgebietes vor.
Die objektorientierte Sprache Python eignet sich hervorragend zum Schreiben von Skripten, Programmen und Prototypen. Sie ist frei verfügbar, leicht zu lernen und zwischen allen wichtigen Plattformen portabel, einschließlich Linux, Unix, Windows und Mac OS. Damit Sie im Programmieralltag immer den Überblick behalten, sind die verschiedenen Sprachmerkmale und Elemente in Python – kurz & gut übersichtlich zusammengestellt. Für Auflage 5 wurde die Referenz komplett überarbeitet, erweitert und auf den neuesten Stand gebracht, so dass sie die beiden aktuellen Versionen 2.7 und 3.4 berücksichtigt. Python – kurz & gut behandelt unter anderem: Eingebaute Typen wie Zahlen, Listen, Dictionarys u.v.a.; nweisungen und Syntax für Entwicklung und Ausführung von Objekten; Die objektorientierten Entwicklungstools in Python; Eingebaute Funktionen, Ausnahmen und Attribute; pezielle Methoden zur Operatorenüberladung; Weithin benutzte Standardbibliotheksmodule und Erweiterungen; Kommandozeilenoptionen und Entwicklungswerkzeuge. Mark Lutz stieg 1992 in die Python-Szene ein und ist seitdem als aktiver Pythonista bekannt. Er gibt Kurse, hat zahlreiche Bücher geschrieben und mehrere Python-Systeme programmiert.
EINE TOUR DURCH C++ // - Dieser Leitfaden will Ihnen weder das Programmieren beibringen noch versteht er sich als einzige Quelle, die Sie für die Beherrschung von C++ brauchen – aber diese Tour ist wahrscheinlich die kürzeste oder einfachste Einführung in C++11. - Für C- oder C++-Programmierer, die mit der aktuellen C++-Sprache vertrauter werden wollen - Programmierer, die in einer anderen Sprache versiert sind, erhalten ein genaues Bild vom Wesen und von den Vorzügen des modernen C++ . Mit dem C++11-Standard können Programmierer Ideen klarer, einfacher und direkter auszudrücken sowie schnelleren und effizienteren Code zu schreiben. Bjarne Stroustrup, der Designer und ursprüngliche Implementierer von C++, erläutert die Details dieser Sprache und ihre Verwendung in seiner umfassenden Referenz „Die C++-Programmiersprache“. In „Eine Tour durch C++“ führt Stroustrup jetzt die Übersichtskapitel aus der Referenz zusammen und erweitert sie so, dass auch erfahrene Programmierer in nur wenigen Stunden eine Vorstellung davon erhalten, was modernes C++ ausmacht. In diesem kompakten und eigenständigen Leitfaden behandelt Stroustrup – neben Grundlagen – die wichtigsten Sprachelemente und die wesentlichen Komponenten der Standardbibliothek. Er präsentiert die C++-Features im Kontext der Programmierstile, die sie unterstützen, wie die objektorientierte und generische Programmierung. Die Tour beginnt bei den Grundlagen und befasst sich dann mit komplexeren Themen, einschließlich vieler, die neu in C++11 sind wie z.B. Verschiebesemantik, einheitliche Initialisierung, Lambda-Ausdrücke, verbesserte Container, Zufallszahlen und Nebenläufigkeit. Am Ende werden Design und Entwicklung von C++ sowie die in C++11 hinzugekommenen Erweiterungen diskutiert. Programmierer erhalten hier – auch anhand von Schlüsselbeispielen – einen sinnvollen Überblick und praktische Hilfe für den Einstieg. AUS DEM INHALT // Die Grundlagen // Benutzerdefinierte Typen // Modularität // Klassen // Templates // Überblick über die Bibliothek // Strings und reguläre Ausdrücke // E/A-Streams // Container // Algorithmen // Utilities // Numerik // Nebenläufigkeit // Geschichte und Kompatibilität
Make the most of OpenCV and Python to build applications for object recognition and augmented reality, 2nd Edition
Author: Gabriel Garrido Calvo,Prateek Joshi
Publisher: Packt Publishing Ltd
ISBN: 1788396766
Category: Computers
Page: 268
View: 6199
Learn the techniques for object recognition, 3D reconstruction, stereo imaging, and other computer vision applications using examples on different functions of OpenCV. Key Features Learn how to apply complex visual effects to images with OpenCV 3.x and Python Extract features from an image and use them to develop advanced applications Build algorithms to help you understand image content and perform visual searches Get to grips with advanced techniques in OpenCV such as machine learning, artificial neural network, 3D reconstruction, and augmented reality Book Description Computer vision is found everywhere in modern technology. OpenCV for Python enables us to run computer vision algorithms in real time. With the advent of powerful machines, we have more processing power to work with. Using this technology, we can seamlessly integrate our computer vision applications into the cloud. Focusing on OpenCV 3.x and Python 3.6, this book will walk you through all the building blocks needed to build amazing computer vision applications with ease. We start off by manipulating images using simple filtering and geometric transformations. We then discuss affine and projective transformations and see how we can use them to apply cool advanced manipulations to your photos like resizing them while keeping the content intact or smoothly removing undesired elements. We will then cover techniques of object tracking, body part recognition, and object recognition using advanced techniques of machine learning such as artificial neural network. 3D reconstruction and augmented reality techniques are also included. The book covers popular OpenCV libraries with the help of examples. This book is a practical tutorial that covers various examples at different levels, teaching you about the different functions of OpenCV and their actual implementation. By the end of this book, you will have acquired the skills to use OpenCV and Python to develop real-world computer vision applications. What you will learn Detect shapes and edges from images and videos How to apply filters on images and videos Use different techniques to manipulate and improve images Extract and manipulate particular parts of images and videos Track objects or colors from videos Recognize specific object or faces from images and videos How to create Augmented Reality applications Apply artificial neural networks and machine learning to improve object recognition Who this book is for This book is intended for Python developers who are new to OpenCV and want to develop computer vision applications with OpenCV and Python. This book is also useful for generic software developers who want to deploy computer vision applications on the cloud. It would be helpful to have some familiarity with basic mathematical concepts such as vectors, matrices, and so on.
Lösungen für alle Software- und Hardware-Probleme. Für alle Versionen inklusive Pi 3 & Zero
Author: Simon Monk
Publisher: O'Reilly
ISBN: 396010118X
Category: Business & Economics
Page: 484
View: 8240
Das Raspberry-Pi-Universum wächst täglich. Ständig werden neue Erweiterungs-Boards und Software-Bibliotheken für den Single-Board-Computer entwickelt. Die zweite Ausgabe dieses beliebten Kochbuchs bietet mehr als 240 Hands-on-Rezepte für den Betrieb des kleinen Low-Cost-Computers mit Linux und für die Programmierung des Pi mit Python. Außerdem erläutert es die Anbindung von Sensoren, Motoren und anderer Hardware, einschließlich Arduino und das Internet der Dinge. Power-Maker und Autor Simon Monk vermittelt grundlegendes Know-how, das Ihnen hilft, auch neue Technologien und Entwicklungen zu verstehen und so mit dem Raspberry-Pi-Ökosystem mitzuwachsen. Dieses Kochbuch ist ideal für Programmierer und Bastler, die mit dem Pi bereits erste Erfahrungen gemacht haben. Alle Codebeispiele sind auf der Website zum Buch verfügbar. - Richten Sie Ihren Raspberry Pi ein und verbinden Sie ihn mit dem Netz. - Arbeiten Sie mit seinem Linux-basierten Betriebssystem Raspbian. - Lernen Sie, den Pi mit Python zu programmieren. - Verleihen Sie Ihrem Pi "Augen" für Anwendungen, die maschinelles Sehen erfordern. - Steuern Sie Hardware über den GPIO-Anschluss. - Verwenden Sie den Raspberry Pi, um unterschiedliche Motoren zu betreiben. - Arbeiten Sie mit Schaltern, Tastaturen und anderen digitalen Eingaben. - Verwenden Sie Sensoren zur Messung von Temperatur, Licht und Entfernung. - Realisieren Sie auf verschiedenen Wegen eine Verbindung zu IoT-Geräten. - Entwerfen Sie dynamische Projekte mit Raspberry Pi und dem Arduino.
Dieses Buch ist für alle, die tief in die C++-Programmierung einsteigen möchten. Dennoch werden keine Programmierkenntnisse vorausgesetzt. John Paul Mueller und Jeff Cogswell erklären Ihnen zunächst, wie Sie C++ installieren. Sie erfahren, was Klassen und Objekte sind, was Sie mit Entwurfsmustern anfangen und wie Sie Ihre Programme debuggen. Aus Anfängern werden Entwickler mit Erfahrung und dann fortgeschrittene Programmierer. Diese finden in diesem Buch Informationen zu dynamischen Arrays, Lambda-Ausdrücken, Streams, UML, der Standardbibliothek, zu Boost und vielem mehr. Alle Codebeispiele des Buchs stehen zum Download zur Verfügung.
Dreißig Jahre vergehen, doch dann bringt eine Frau das Unmögliche fertig und rechnet mit dem Mann ab, der ihr Leben zerstört hat. Als junges Mädchen war sie von ihm vergewaltigt worden und konnte nie verwinden, dass diese Tat ungesühnt blieb.
Git wurde von keinem Geringeren als Linus Torvalds ins Leben gerufen. Sein Ziel: die Zusammenarbeit der in aller Welt verteilten Entwickler des Linux-Kernels zu optimieren. Mittlerweile hat das enorm schnelle und flexible System eine groe Fangemeinde gewonnen. Viele Entwickler ziehen es zentralisierten Systemen vor, und zahlreiche bekannte Entwicklungsprojekte sind schon auf Git umgestiegen. Verstandliche Einfuhrung: Wer Git einsetzen und dabei grotmoglichen Nutzen aus seinen vielseitigen Funktionen ziehen mochte, findet in diesem Buch einen idealen Begleiter. Versionskontrolle mit Git fuhrt grundlich und gut verstandlich in die leistungsstarke Open Source-Software ein und demonstriert ihre vielfaltigen Einsatzmoglichkeiten. Auf dieser Basis kann der Leser Git schon nach kurzer Zeit produktiv nutzen und optimal auf die Besonderheiten seines Projekts abstimmen. Insider-Tipps aus erster Hand: Jon Loeliger, der selbst zum Git-Entwicklerteam gehort, lasst den Leser tief ins Innere des Systems blicken, so dass er ein umfassendes Verstandnis seiner internen Datenstrukturen und Aktionen erlangt. Neben alltaglicheren Szenarios behandelt Loeliger auch fortgeschrittene Themen wie die Verwendung von Hooks zum Automatisieren von Schritten, das Kombinieren von mehreren Projekten und Repositories zu einem Superprojekt sowie die Arbeit mit Subversion-Repositories in Git-Projekten.
by Daniel J. Barrett,Richard E. Silverman,Robert G. Byrnes
Es macht Spaß, elektronische Dinge zu bauen, die mit der realen Welt interagieren. Aber so richtig cool wird’s erst, wenn die Dinge anfangen sich untereinander zu unterhalten. Mit 33 leicht nachzubauenden Projekten wird dir in Making Things Talk – Die Welt hören, sehen, fühlen gezeigt, wie du deine Gadgets dazu bringst, mit dir und mit der Umwelt zu kommunizieren. Das Buch ist genau für die geschrieben, die zwar nur wenig technische Erfahrung, dafür aber umso mehr geekige Neugierde mitbringen. Lass Mikrocontroller, PCs, Server und Smartphones miteinander quatschen. Vielleicht willst du deinen Freunden zeigen, wie man das Wetter aus unterschiedlichen Teilen der Welt clever darstellen kann. Vielleicht bist du aber auch eine Künstlerin, die ihren Skulpturen mechanisches Leben einhauchen möchte. In diesem Standardwerk lernst du, wie man Geräte-Netzwerke schafft, die sich Daten teilen und auf Befehle von außen reagieren. Mit ein wenig Elektronikgrundwissen, preiswerten Mikrocontrollern und ein paar Netzwerkmodulen baust du coole Projekte: Blink - Dein allererstes Programm Monski Pong - Steuere ein Computerspiel mit einem flauschigen, pinkfarbenen Stoffäffchen Internet-Luftqualitätsmesser - Bau eine Internet-Messstation für Luftqualität Giftwarnung in der Werkstatt - Verwende ein XBee-Modul, Sensoren und ein Stofftier, um dich vor giftigen Dämpfen warnen zu lassen. Bluetooth GPS - Bau einen batteriebetriebenes GPS-Gerät, das via Bluetooth seinen Standort mitteilt. Tweets mit RFID - Lese einen Twitter-Stream via RFID-Tags.
Die Programmierung mit C++ muss nicht schwer sein. Mit diesem Buch werden Sie schon ab dem ersten Kapitel eigene Programme schreiben und die C++-Syntax von der Pike auf lernen, verstehen und anwenden. Anhand zahlreicher "Programmschnipsel" erklärt Ihnen Stephen Randy Davis, wie Sie Code zu Modulen zusammenfassen, die Sie immer wieder verwenden können und schon bald werden Ihnen auch Konzepte wie Zeiger, Vererbung oder Klassen kein Rätsel mehr sein.
Sean McManus und Mike Cook f?hren Sie Schritt f?r Schritt in die Nutzung des Raspberry Pi ein und verschaffen Ihnen einen ?berblick ?ber all die M?glichkeiten, die er Ihnen bietet. Sie zeigen Ihnen, wie Sie den Raspberry Pi zum Laufen bringen, sich unter Linux zurechtfinden, den Raspberry Pi als ganz normalen Computer mit Office- und Bildverarbeitungsprogrammen oder als Mediencenter zum Abspielen von Musik und Videos nutzen. Au?erdem lernen Sie mit Scratch und Python programmieren und erfahren alles ?ber die Verwendung des Raspberry Pi als Steuereinheit f?r elektronisches Spielzeug.
Wenn Sie programmieren können, beherrschen Sie bereits Techniken, um aus Daten Wissen zu extrahieren. Diese kompakte Einführung in die Statistik zeigt Ihnen, wie Sie rechnergestützt, anstatt auf mathematischem Weg Datenanalysen mit Python durchführen können. Praktischer Programmier-Workshop statt grauer Theorie: Das Buch führt Sie anhand eines durchgängigen Fallbeispiels durch eine vollständige Datenanalyse -- von der Datensammlung über die Berechnung statistischer Kennwerte und Identifikation von Mustern bis hin zum Testen statistischer Hypothesen. Gleichzeitig werden Sie mit statistischen Verteilungen, den Regeln der Wahrscheinlichkeitsrechnung, Visualisierungsmöglichkeiten und vielen anderen Arbeitstechniken und Konzepten vertraut gemacht. Statistik-Konzepte zum Ausprobieren: Entwickeln Sie über das Schreiben und Testen von Code ein Verständnis für die Grundlagen von Wahrscheinlichkeitsrechnung und Statistik: Überprüfen Sie das Verhalten statistischer Merkmale durch Zufallsexperimente, zum Beispiel indem Sie Stichproben aus unterschiedlichen Verteilungen ziehen. Nutzen Sie Simulationen, um Konzepte zu verstehen, die auf mathematischem Weg nur schwer zugänglich sind. Lernen Sie etwas über Themen, die in Einführungen üblicherweise nicht vermittelt werden, beispielsweise über die Bayessche Schätzung. Nutzen Sie Python zur Bereinigung und Aufbereitung von Rohdaten aus nahezu beliebigen Quellen. Beantworten Sie mit den Mitteln der Inferenzstatistik Fragestellungen zu realen Daten.
Werfen Sie Ihre Vorstellungen von C über Bord und lernen Sie eine Programmiersprache neu kennen, die ihren Wurzeln schon lange entwachsen ist. Mit C im 21. Jahrhundert werden Sie aktuelle Techniken entdecken, die in keinem anderen Buch über C zu finden sind. C ist nicht nur die Grundlage der modernen Programmiersprachen - C selbst ist eine moderne Sprache, ideal zum Schreiben effizienter Applikationen auf dem neuesten Stand der Technik. Trennen Sie sich von alten Angewohnheiten, die auf Mainframes sinnvoll waren, und entdecken Sie in diesem Buch die Tools, die Sie zur Arbeit mit dieser ausgereiften und überzeugend einfachen Sprache benötigen. Egal, in welcher Programmiersprache Sie gerade unterwegs sind, Sie werden merken: C rockt! Zweite, vollständig überarbeitete Auflage.
Eine praktische, projektbasierte Programmiereinführung
Author: Eric Matthes
Publisher: dpunkt.verlag
ISBN: 3960881460
Category: Computers
Page: 622
View: 383
"Python Crashkurs" ist eine kompakte und gründliche Einführung, die es Ihnen nach kurzer Zeit ermöglicht, Python-Programme zu schreiben, die für Sie Probleme lösen oder Ihnen erlauben, Aufgaben mit dem Computer zu erledigen. In der ersten Hälfte des Buches werden Sie mit grundlegenden Programmierkonzepten wie Listen, Wörterbücher, Klassen und Schleifen vertraut gemacht. Sie erlernen das Schreiben von sauberem und lesbarem Code mit Übungen zu jedem Thema. Sie erfahren auch, wie Sie Ihre Programme interaktiv machen und Ihren Code testen, bevor Sie ihn einem Projekt hinzufügen. Danach werden Sie Ihr neues Wissen in drei komplexen Projekten in die Praxis umsetzen: ein durch "Space Invaders" inspiriertes Arcade-Spiel, eine Datenvisualisierung mit Pythons superpraktischen Bibliotheken und eine einfache Web-App, die Sie online bereitstellen können. Während der Arbeit mit dem "Python Crashkurs" lernen Sie, wie Sie: - leistungsstarke Python-Bibliotheken und Tools richtig einsetzen – einschließlich matplotlib, NumPy und Pygal - 2D-Spiele programmieren, die auf Tastendrücke und Mausklicks reagieren, und die schwieriger werden, je weiter das Spiel fortschreitet - mit Daten arbeiten, um interaktive Visualisierungen zu generieren - Web-Apps erstellen und anpassen können, um diese sicher online zu deployen - mit Fehlern umgehen, die häufig beim Programmieren auftreten Dieses Buch wird Ihnen effektiv helfen, Python zu erlernen und eigene Programme damit zu entwickeln. Warum länger warten? Fangen Sie an!