What you will learn in Build Your Own Robot: Using Python, CRICKIT, and Raspberry Pi
Using Python, CRICKIT, and Raspberry PI
Chapter by chapter
Concepts explained in this book
- OpenCVOpenCV is an open-source computer vision library for image and video processing.
- servo motorA servo motor is a motor with feedback sensors and control circuitry that enables controlled movement to a specified position or angle.
- face-detection algorithmFace detection is the computer-vision task of locating faces in images or video.
- Adafruit CRICKIT libraryThe Adafruit CRICKIT library is a software library for controlling hardware connected through the Adafruit CRICKIT robotics board.
- joystick eventA joystick event is a software-reported occurrence representing an input change from a joystick controller, such as a button press or stick movement.
- web applicationA web application is software that provides interactive functionality through web technologies and network communication.
- environment variableAn environment variable is a named operating-system value made available to programs at runtime for configuration or other contextual information.
- robot shellA custom interactive command shell that accepts robot movement commands and dispatches them to robot-control code.
- QR codeA QR code is a two-dimensional machine-readable barcode that encodes data in a patterned square image.
- y-axis eventAn axis event is a software input event that reports a change in the position of a joystick control axis.
- motor libraryThe motor library is a book-specific Python library that provides reusable functions for controlling the robot's movement.
- joystickJoystick is a Pygame API constructor or class interface for creating an object that represents and accesses a joystick controller device.
- TornadoTornado is a Python web framework and asynchronous networking library for building web applications.
- detectMultiScaleOpenCV detectMultiScale applies a cascade classifier across image regions and scales to return detected object bounding rectangles.
- MapA dictionary is a mapping data structure that associates keys with corresponding values.
- robotA machine that senses, processes information, and performs physical actions autonomously or under human control.
- CSVCSV is a delimited text format for tabular data, with records represented as lines and fields commonly separated by commas.
- get methodThe get method is a mapping operation that returns the value for a key or a specified default when the key is absent.
- struct moduleThe Python standard-library module that converts between packed binary data and Python values using C-style format specifications.
- DC motorA DC motor is an electric motor that converts direct-current electrical energy into rotational motion, including controlled motion in either direction.
- CRICKITCRICKIT is an Adafruit add-on board for Raspberry Pi that controls attached robotic actuators and provides power for them.
- imwriteOpenCV imwrite encodes image data according to a filename extension and writes it to a file.
- VideoCaptureVideoCapture is an OpenCV interface object for opening and retrieving frames from a camera or video source.
- actuation rangeThe actuation range is the permitted interval of physical positions through which a servo can move.
- frame rateFrame rate is the number of visual frames processed, displayed, or captured per second.
- QR code decodingQR code decoding is the process of extracting encoded data from a QR code image.
- NumPyNumPy is a Python library for numerical computing that provides multidimensional arrays and operations on numerical data.
- DictReaderDictReader is a Python CSV-reading interface that represents each input record as a dictionary keyed by field names.
- histogram equalizationHistogram equalization is an image-processing technique that remaps intensity values to improve the use of available contrast.
- osThe Python standard-library module that provides interfaces to operating-system facilities, including access to environment variables.
- pick-and-place robotA pick-and-place robot is a robot that transfers objects between locations by grasping, moving, and placing them.
- NumPy arrayAn ndarray is a NumPy multidimensional array containing values of a specified data type.
- persistent connectionA persistent connection is a network connection that remains open so multiple requests can be transmitted without establishing a new connection for each request.
- imshowOpenCV imshow displays an image in a named graphical window.
- Linux input subsystemThe Linux kernel subsystem that provides a common interface for input devices such as joysticks, keyboards, and mice.
- grayscale imageGrayscale is an image representation in which each pixel records a single intensity value rather than separate color components.
- ramdiskA ramdisk is a filesystem whose stored files reside in volatile computer memory instead of physical storage devices.
- servo armA servo arm is a mechanically attached arm driven by a servo motor to perform controlled physical movement.
- iframeAn iframe is an HTML element that embeds another document or web resource within a page.
- Tornado ApplicationTornado Application is the application object that maps incoming request paths to request handlers and manages web-server configuration.
- Motion JPEGMotion JPEG is a video format that represents a video as a continuous sequence of independently encoded JPEG images.
- Haar feature-based cascade classifierA Haar feature-based cascade classifier is a cascade classifier that detects objects using Haar-like image features arranged in successive classification stages.
- rectangle functionThe OpenCV rectangle function draws a rectangular outline or filled rectangle on an image.
- waitKeyOpenCV waitKey waits for a specified interval, returns a keyboard input code when available, and processes window events.
- PythonPython is a high-level, general-purpose programming language commonly used for automation, data processing, and application development.
- event loopAn event loop is a control structure that repeatedly waits for input or events and dispatches corresponding handlers.
- cameraA camera is an imaging device that captures visual data for processing or recording.
- HTML templateAn HTML template is an HTML document containing markup and placeholders intended to be rendered by a web application.
- technology stackA hardware and software stack is a layered model of the hardware and software components that together provide a computing system's functionality.
- putTextOpenCV putText renders text onto an image at a specified position using selected font and styling parameters.
- refactoringThe systematic restructuring of existing software code without changing its externally observable behavior.
- cascade classifierCascadeClassifier is an OpenCV API that constructs a cascade-classifier object from a trained model file.
- cvtColorOpenCV cvtColor converts an image between color representations such as color and grayscale.
- device fileA filesystem entry that provides a file-like interface to a hardware device or kernel device driver.
- jstestA Linux command-line utility that displays joystick devices, controls, and generated input events.
- set_throttleA robot-control operation that assigns throttle levels to motors using a motor name, direction factor, and speed value.
- JSONJSON is a text-based data-interchange format that represents structured values using objects, arrays, strings, numbers, booleans, and null.
- pygamePygame is a Python library for developing multimedia applications and games, including windowing, input, graphics, and event handling.
- shell command historyA shell feature that stores previously entered commands so they can be retrieved and executed again.
- pollingPolling is a technique that repeatedly checks a resource or condition at a configured interval.
- face trackingFace tracking is the computer-vision technique of following a detected face across successive images or video frames.
- command-line argumentA value supplied to a program when it is launched from a command line.
- computer visionSoftware that enables computers to interpret and analyze visual information.
- NeoPixelA NeoPixel is a digitally controllable RGB light-emitting diode whose color and brightness can be set by software.
- machine learningMachine learning is the computational practice of fitting models to data so they can make predictions or decisions without being explicitly programmed for every case.
- partialpartial is a callable factory that returns a new function with selected positional or keyword arguments of an existing function pre-bound.
- cmd moduleThe cmd module is a Python standard-library module that provides a framework for building interactive command interpreters.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.
