摘要:
A system and method for locating regions in a target image that match a template image with respect to color and pattern information. The template image is characterized with regard to pattern and color. The method comprises performing a first-pass search using color information from the color characterization of the template image to find one or more color match candidate locations. For each color match candidate location, a luminance, i.e., gray scale, pattern matching search is performed on a region proximal to the location, producing one or more final match regions. For each final match region a hue plane pattern match score may be calculated using pixel samples from the interior of each pattern. A final color match score may be calculated for each final match region. A weighted sum of luminance pattern match, hue pattern match, and color match scores may be calculated, and the scores and sum output.
摘要:
A system and method for performing pattern matching to locate zero or more instances of a template image in a target image. An image is received by a computer from an image source, e.g., a camera. First pattern matching is performed on the image using a first pattern matching technique to determine a plurality of candidate areas. Second pattern matching is performed on each of the candidate areas using a second different pattern matching technique to generate final pattern match results. An output is generated indicating the final pattern match results. The second pattern matching may determine a second plurality of candidate areas which may be analyzed to determine the final pattern match results. The first pattern matching may use a plurality of pattern matching techniques, the results of which may be used to select a best technique from the plurality of techniques to use for the second pattern match.
摘要:
A system and method for performing pattern matching to locate zero or more instances of a template image in a target image. An image is received by a computer from an image source, e.g., a camera. First pattern matching is performed on the image using a first pattern matching technique to determine a plurality of candidate areas. Second pattern matching is performed on each of the candidate areas using a second different pattern matching technique to generate final pattern match results. An output is generated indicating the final pattern match results. The second pattern matching may determine a second plurality of candidate areas which may be analyzed to determine the final pattern match results. The first pattern matching may use a plurality of pattern matching techniques, the results of which may be used to select a best technique from the plurality of techniques to use for the second pattern match.
摘要:
A system and method for automatically generating a graphical program from a prototyping environment application. By utilizing an application specialized for developing solutions to problems in a particular domain, i.e., a prototyping environment, a user may develop a solution to a problem, i.e., a prototype. The prototype may comprise a series of functions that form an algorithm or process. Once the user has developed the desired prototype, the user may request the prototyping environment to automatically, i.e., programmatically, generate a graphical program implementing the prototype, e.g., in order to run the program independently of the prototyping environment. In various embodiments, the prototyping environment may be operable to generate any of various types of graphical programs. Once the graphical program has been generated, the program may be modified as desired, e.g., in order to include features not available from the prototyping environment that generated the program.
摘要:
System and method for automatically generating a graphical program to perform an image processing algorithm. A user may develop an image processing algorithm in an image prototyping environment. The image prototyping environment enables the user to easily apply various image processing functions to an image and immediately see the results, in order to develop the desired algorithm. As the user applies each image processing function to an image, the function may be recorded as a step in a script. Once the user has developed an algorithm, the user may request the image prototyping environment to automatically generate a program implementing the image processing algorithm. In various embodiments, the prototyping environment may be operable to generate different types of programs, including text-based and graphical programs. For example, a text-based program may include function calls corresponding to each step in the script recorded while developing the image processing algorithm, while a graphical program may include nodes corresponding to the steps of the script. The generated program may be operable to display a user interface comprising controls for interactively changing various parameters used by the image processing functions. An application programming interface (API) provided by a graphical programming environment that supports the dynamic creation/editing of a graphical program is described. The image prototyping environment may interface with a graphical programming environment through such an API in order to generate a graphical program that implements an algorithm specified by a script.
摘要:
A machine vision system and method for performing illumination line analysis on an image of an object to detect defects in the object. The method may comprise projecting a pattern of lines on a surface of the object, and then generating an image of the surface of the object. The analysis method tracks left and right edges of each of the illumination lines to determine width and curvature of each of the lines, preferably using a bi-directional edge detection technique applied to a path perpendicular to the current orientation of the line. Information regarding the left and right edges of the line may be used to determine local widths and local orientations of the line. This information may be used to determine if a thinning or blooming of the line occurs, or if a change in curvature of the line occurs, which may indicate a possible defect in the object.
摘要:
A data acquisition (DAQ) system and method which includes an improved event architecture. The DAQ device includes event logic coupled to receive one or more external or internal events from event sources. The event logic comprises one or more event selectors and one or more event mappers. The event selectors and event mappers receive event signals from event sources and selectively route the event signals to one or more destinations, also referred to as destination hardware elements. The destinations are operable to perform an action in response to receipt of the selected event signal. The event architecture of the present invention is designed to take advantage of both the flexibility of the traditional computer interrupt architecture and the speed of direct hardware mapping. At its essence, the hardware architecture comprises a mini, hardware, interrupt service routine. Hardware events or triggers are mapped to a set of board-level Events which are similar to the traditional idea of an interrupt. These hardware Events can then be mapped to cause a wide variety of direct hardware or software actions, similar to the traditional interrupt service routine, with the exception that the hardware events can be made to cause a wide variety of real-time or deterministic responses because no host processing is required.
摘要:
A PCI bus to IEEE 1394 bus translator for coupling a PCI device to a host computer via an IEEE 1394 bus. The translator translates addresses of PCI bus cycles initiated by the PCI device into 1394 memory addresses and performs data transfers between the PCI device and host computer by exchanging 1394 request and response packets with the host computer using the translated 1394 memory address. The translator also translates 1394 memory addresses of 1394 request packets received from the host computer into PCI cycle addresses and performs data transfers between the PCI device and host computer by initiating PCI bus cycles targeted at the PCI device using the translated PCI bus cycle addresses. The translator posts data from sequential PCI bus write cycles initiated by the PCI device into a write-posting FIFO until granted ownership of the 1394 bus. The translator combines the PCI write cycle data into a single IEEE 1394 write request packet and transmits the packet on the 1394 bus to the host computer. The translator, if configured to a first mode, pipelines subsequent PCI bus write cycles by posting the PCI write cycle data into the write-posting FIFO once reception of the first 1394 write request packet has been acknowledged by the host computer but prior to the host computer responding with status indicating the completion of the write transaction, in particular whether or not a resource conflict occurred. In response to a PCI read cycle initiated by the PCI device, the translator pre-fetches a larger amount of data than specified in the PCI read cycle from the host computer into a pre-fetch FIFO in order to satisfy subsequent PCI read cycles which are in address sequence with the previous PCI read cycle. The translator pre-fetches more data from the host computer once the pre-fetch FIFO becomes a predetermined amount empty in order to pipeline the consumption of the pre-fetch data by the PCI device and the transmission of the pre-fetch data by the host computer to the translator.
摘要:
A system and method for configuring a hardware device to execute a prototype is presented. The hardware device may include a programmable hardware element and/or a processor and memory. The prototype may comprise a software entity operable to perform a plurality of executable operations, wherein the prototype is created by a user without requiring user programming. For example, a prototyping environment may provide a library of operations that are specific to a particular problem domain and may enable the user to select various operations from the library for inclusion in the prototype. The prototyping environment may include a graphical user interface that is streamlined for interactively experimenting with various parameters or properties associated with the selected operations and seeing the effects of adjusting the parameters.
摘要:
A computer-implemented system and method for generating a hardware implementation of graphical code. The method may operate to configure an instrument to perform measurement functions, wherein the instrument includes a programmable hardware element. The method comprises first creating a graphical program, wherein the graphical program may implement a measurement function. A portion of the graphical program may be converted into a hardware implementation on a programmable hardware element, and a portion may optionally be compiled into machine code for execution by a CPU. The programmable hardware element is thus configured utilizing a hardware description and implements a hardware implementation of at least a portion of the graphical program.