# Smart camera

A smart camera is a machine vision system which, in addition to image capture circuitry, is capable of extracting application-specific information from the captured images, along with generating event descriptions or making decisions that are used in an intelligent and automated system. A smart camera is a self-contained, standalone vision system with built-in image sensor in the housing of an industrial video camera. It is also known as an intelligent camera, a (smart) vision sensor, an intelligent vision sensor, a smart optical sensor, an intelligent optical sensor, a smart visual sensor, or an intelligent visual sensor.
The vision system and the image sensor can be integrated into one single piece of hardware known as intelligent image sensor or smart image sensor. It contains all necessary communication interfaces, e.g. Ethernet, as well as industry-proof 24V I/O lines for connection to a PLC, actuators, relays or pneumatic valves, and can be either static or mobile. It is not necessarily larger than an industrial or surveillance camera. A capability in machine vision generally means a degree of development such that these capabilities are ready for use on individual applications. This architecture has the advantage of a more compact volume compared to PC-based vision systems and often achieves lower cost, at the expense of a somewhat simpler (or omitted) user interface. Smart cameras are also referred to by the more general term smart sensors.

## History

The first publication of the term smart camera was in 1975 as according to Belbachir et al. In 1976, the General Electric's Electronic Systems Division indicated requirements of two industrial firms for smart cameras in a report for National Technical Information Service. Authors affiliated in HRL Laboratories defined a smart camera as "a camera that could process its pictures before recording them" in 1976. One of the first mentions of smart optical sensors appeared in a concept evaluation for satellites by NASA and General Electric Space Division from 1977. They were suggested as a means for intelligent on-board editing and reduction of data.
Smart cameras have been marketed since the mid 80s. In the 21st century they have reached widespread use, since technology allowed their size to be reduced and their processing power reached several thousand MIPS (devices with 1 GHz processors and up to 8000MIPS are available as of end of 2006).
Artificial intelligence and photonics boost each other. Photonics accelerates the process of data collection for AI and AI improves the spectrum of applications of photinics. In 2020, Sony has launched the first intelligent vision sensors with AI edge computing capabilies. It is a further development of Exmor technology.

## Components

A smart camera usually consists of several (but not necessarily all) of the following components:
* Image sensor (matrix or linear, CCD- or CMOS)
* Image digitization circuitry
* Image memory
* processor (often a DSP or suitably powerful processor)
* program- and data memory (RAM, nonvolatile FLASH)
* Communication interface (RS-232, Ethernet)
* I/O lines (often opto-isolated)
* Lens holder or built in lens (usually C, CS or M-mount)
* Built in illumination device (usually LED)
* Purpose developed real-time operating system (For example VCRT)
* Optional video output (e.g. VGA or SVGA)
* Energy supply by e.g. energy harvesting

## Fields of application

Having a dedicated processor in each unit, smart cameras are especially suited for applications where several cameras must operate independently and often asynchronously, or when distributed vision is required (multiple inspection or surveillance points along a production line or within an assembly machine). In general smart cameras can be used for the same kind of applications where more complex vision systems are used, and can additionally be applied in some applications where volume, pricing or reliability constraints forbid use of bulkier devices and PC's.
Typical fields of application are:
* automated inspection for quality assurance (detection of defects, flaws, missing parts...)
* non contact measurements.
* part sorting and identification.
* code reading and verification (barcode, Data Matrix, alphanumeric etc.)
* web inspection (inspection of continuously flowing materials such as coils, tubes, wires, extruded plastic) for defect detection and dimensional gauging.
* detection of position and rotation of parts for robot guidance and automated picking
* unattended surveillance (detection of intruders, fire or smoke detection)
* biometric recognition and access control (face, fingerprint, iris recognition)
* visual sensor networks and smartdust
* robot guidance
* nearly any machine vision application
Developers can purchase smart cameras and develop their own programs for special, custom made applications, or they can purchase ready made application software from the camera manufacturer or from third party sources. Custom programs can be developed by programming in various languages (typically C or C++) or by using more intuitive, albeit somewhat less flexible, visual development tools where existing functionalities (often called tool or blocks) can be connected in a list (a sequence or a bi-dimensional flowchart) that describes the desired flow of operations without any need to write program code. The main advantage of the visual approach versus programming is the shorter and somewhat easier development process, available also to non-programmers. Other development tools are available with relatively few but comparatively high level functionalities, which can be configured and deployed with very limited effort.