Patents by Inventor Kevin L. Schultz

Kevin L. Schultz has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7327396
    Abstract: A smart camera with modular expansion capabilities, including a housing, a camera directly attached to the housing for acquiring an image of an object, a functional unit comprised in the housing and coupled to the camera, where the functional unit is configurable to implement an image processing function, a backplane comprised in the housing and coupled to the functional unit to provide electrical communication, and one or more slots comprised in the housing, where each slot includes a connector that is electrically coupled to the backplane, and where each slot is adapted for receiving a function module. An inserted function module provides modular functionality to the smart camera, such as dedicated image processing functionality, pattern recognition, analysis, communication, sensor, sensor I/O, signal conditioning and/or conversion, control, measurement, and synchronization, among others. The function module may communicate a protocol to the functional unit which may be configured to implement the protocol.
    Type: Grant
    Filed: April 10, 2002
    Date of Patent: February 5, 2008
    Assignee: National Instruments Corporation
    Inventors: Kevin L. Schultz, Perry Steger, Stefanie Breyer
  • Patent number: 7233699
    Abstract: 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.
    Type: Grant
    Filed: March 18, 2002
    Date of Patent: June 19, 2007
    Assignee: National Instruments Corporation
    Inventors: Lothar Wenzel, Nicolas Vazquez, Kevin L. Schultz, Dinesh Nair
  • Patent number: 7146347
    Abstract: A system and method for enabling a prototyping environment application to automatically create a plurality of prototypes, wherein each of the plurality of prototypes is configured to perform a process to solve a particular problem. In response to receiving user input requesting the automatic creation of a prototype, the prototyping environment may display a list of items, wherein each item visually indicates a particular problem. In response to the user specifying an item, the prototyping environment is operable to create a prototype including a plurality of elements operable to interact in order to perform a process to solve the problem indicated by the specified item. The prototyping environment is preferably operable to receive and use solution information updates enabling the automatic creation of a new prototype, i.e., a prototype configured to perform a process to solve a new problem.
    Type: Grant
    Filed: August 3, 2000
    Date of Patent: December 5, 2006
    Assignee: National Instruments Corporation
    Inventors: Nicolas Vazquez, Kevin L. Schultz
  • Patent number: 7139979
    Abstract: Operations in an application may be displayed using a graphical programming representation. A plurality of interconnected icons may be displayed, where each icon corresponds to an operation included in the application. The plurality of interconnected icons may visually indicate a function implemented by operations in the application. Each displayed icon may correspond to a node in a graphical programming development environment.
    Type: Grant
    Filed: June 10, 2002
    Date of Patent: November 21, 2006
    Assignee: National Instruments Corporation
    Inventors: Kevin L. Schultz, Nicolas Vazquez
  • Patent number: 7079141
    Abstract: A system and method for specifying a machine vision process utilizing two or more different program creation methodologies. In one embodiment, the different program creation methodologies may include specifying steps or operations for the process using graphical input panels, e.g., in a “wizard-based” manner, and using graphical programming techniques for other portions, such as to specify decision operations. Thus, optimum program creation methodologies may be used for specifying different respective portions of the process.
    Type: Grant
    Filed: March 18, 2002
    Date of Patent: July 18, 2006
    Assignee: National Instruments Corporation
    Inventors: Nicolas Vazquez, Kevin L. Schultz
  • Patent number: 7051317
    Abstract: A system and method for specifying a computer-implemented process utilizing two or more different program creation methodologies. In one embodiment, the different program creation methodologies may include specifying steps or operations for the process using graphical input panels, e.g., in a “wizard-based” manner, and using graphical programming techniques for other portions, such as to specify decision operations. Thus, optimum program creation methodologies may be used for specifying different respective portions of the process. At least a portion of the process may be dependent on prior execution results determined by a previous portion of the process. As an example, for a machine vision inspection process, the previous portion of the process may analyze images of a product, and a subsequent portion of the process may depend on the results of the image analysis, e.g., may either accept or reject the product depending on prior execution results of the image analysis portion.
    Type: Grant
    Filed: August 27, 2001
    Date of Patent: May 23, 2006
    Assignee: National Instruments Corporation
    Inventors: Nicolas Vazquez, Kevin L. Schultz
  • Patent number: 6970182
    Abstract: A system and method for acquiring images of variably sized objects. An object detector provides an indication of the presence or absence of objects as they pass by. An image sensing device acquires image data for the objects. An image acquisition device starts an activity counter, and initiates storage of image data for an object in response to detecting presence of the object. The image data is stored into an on-board memory. The activity counter counts a number of acquired scan lines for the object. In response to detecting absence of the object, the image acquisition device terminates the activity counter, and discontinues storage of the image data for the object. The final activity counter value, which reflects the number of scan lines acquired for the object, is recorded in an on-board FIFO. The image data is transferred to a system memory image buffer in a system memory. Host software routines may read the on-board FIFO.
    Type: Grant
    Filed: October 20, 1999
    Date of Patent: November 29, 2005
    Assignee: National Instruments Corporation
    Inventors: Kevin L. Schultz, B. Keith Odom, Charles Schroeder, Mike Hall
  • Patent number: 6971066
    Abstract: A computer-implemented system and method for deploying a graphical program onto an image acquisition (IMAQ) device. The method may operate to configure an image acquisition (IMAQ) device to perform image processing or machine vision functions, wherein the device includes a programmable hardware element and/or a processor and memory. The method comprises first creating a graphical program which implements the image processing or machine vision 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. The CPU-executable code may be executed by a computer coupled to the IMAQ device, or by a processor/memory on the IMAQ device.
    Type: Grant
    Filed: September 10, 2001
    Date of Patent: November 29, 2005
    Assignee: National Instruments Corporation
    Inventors: Kevin L. Schultz, Jeffrey L. Kodosky, Hugo Andrade, Brian Keith Odom, Cary Paul Butler
  • Patent number: 6944331
    Abstract: 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.
    Type: Grant
    Filed: October 26, 2001
    Date of Patent: September 13, 2005
    Assignee: National Instruments Corporation
    Inventors: Darren R. Schmidt, Kevin L. Schultz, Siming Lin, Dinesh Nair
  • Patent number: 6931633
    Abstract: A system and method for creating an image processing algorithm and automatically evaluating the performance of the algorithm. A user may develop an image processing algorithm in an image prototyping environment. The image prototyping environment may provide image processing functions for analyzing, processing, or manipulating various types of images. Once the user has developed an image processing algorithm, the user may execute the algorithm. In response to executing the algorithm, the execution time requirements of the algorithm may be determined. This information may be used, for example, in order to determine whether the image processing algorithm is fast enough to evaluate images that are acquired at a particular rate in a real-time application. The information may also help the user identify portions of the algorithm that need to be modified, e.g., because they are bottlenecks in the algorithm.
    Type: Grant
    Filed: August 1, 2000
    Date of Patent: August 16, 2005
    Assignee: National Instruments Corporation
    Inventors: Nicolas Vazquez, Kevin L. Schultz
  • Patent number: 6784903
    Abstract: 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.
    Type: Grant
    Filed: June 25, 2001
    Date of Patent: August 31, 2004
    Assignee: National Instruments Corporation
    Inventors: Jeffrey L. Kodosky, Hugo Andrade, Brian Keith Odom, Cary Paul Butler, Kevin L. Schultz
  • Patent number: 6763515
    Abstract: 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.
    Type: Grant
    Filed: June 5, 2000
    Date of Patent: July 13, 2004
    Assignee: National Instruments Corporation
    Inventors: Nicolas Vazquez, Jeffrey L. Kodosky, Ram Kudukoli, Kevin L. Schultz, Dinesh Nair, Christophe Caltagirone
  • Patent number: 6720968
    Abstract: A video capture system and method whereby video frames or images, which are received in one of a plurality of possible formats, are acquired and stored into on-board memory in an image format. The image data can then be transferred into system memory at an optimum rate. The video capture system comprises a host computer, including a video capture board, which is coupled to a video source, such as a video camera. The video source provides digital video data in a first format of a plurality of different possible formats. The video capture board includes a memory controller which receives the digital video data in the first format and selectively provides the digital video data to the buffer memory in an image format. The memory controller includes address generation logic for generating buffer memory addresses for storing the video data to the buffer memory in the image format.
    Type: Grant
    Filed: December 11, 1998
    Date of Patent: April 13, 2004
    Assignee: National Instruments Corporation
    Inventors: Cary Paul Butler, B. Keith Odom, Kevin L. Schultz, Charles G. Schroeder
  • Patent number: 6665066
    Abstract: 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.
    Type: Grant
    Filed: April 27, 2001
    Date of Patent: December 16, 2003
    Assignee: National Instruments Corporation
    Inventors: Dinesh Nair, Kevin L. Schultz
  • Publication number: 20030227483
    Abstract: Operations in an application may be displayed using a graphical programming representation. A plurality of interconnected icons may be displayed, where each icon corresponds to an operation included in the application. The plurality of interconnected icons may visually indicate a function implemented by operations in the application. Each displayed icon may correspond to a node in a graphical programming development environment.
    Type: Application
    Filed: June 10, 2002
    Publication date: December 11, 2003
    Inventors: Kevin L. Schultz, Nicolas Vazquez
  • Publication number: 20030193571
    Abstract: A smart camera with modular expansion capabilities, including a housing, a camera directly attached to the housing for acquiring an image of an object, a functional unit comprised in the housing and coupled to the camera, where the functional unit is configurable to implement an image processing function, a backplane comprised in the housing and coupled to the functional unit to provide electrical communication, and one or more slots comprised in the housing, where each slot includes a connector that is electrically coupled to the backplane, and where each slot is adapted for receiving a function module. An inserted function module provides modular functionality to the smart camera, such as dedicated image processing functionality, pattern recognition, analysis, communication, sensor, sensor I/O, signal conditioning and/or conversion, control, measurement, and synchronization, among others. The function module may communicate a protocol to the functional unit which may be configured to implement the protocol.
    Type: Application
    Filed: April 10, 2002
    Publication date: October 16, 2003
    Inventors: Kevin L. Schultz, Perry Steger, Stefanie Breyer
  • Publication number: 20030174891
    Abstract: 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.
    Type: Application
    Filed: March 18, 2002
    Publication date: September 18, 2003
    Inventors: Lothar Wenzel, Nicolas Vazquez, Kevin L. Schultz, Dinesh Nair
  • Publication number: 20030083850
    Abstract: 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.
    Type: Application
    Filed: October 26, 2001
    Publication date: May 1, 2003
    Inventors: Darren R. Schmidt, Kevin L. Schultz, Siming Lin, Dinesh Nair
  • Publication number: 20030043175
    Abstract: A system and method for specifying a machine vision process utilizing two or more different program creation methodologies. In one embodiment, the different program creation methodologies may include specifying steps or operations for the process using graphical input panels, e.g., in a “wizard-based” manner, and using graphical programming techniques for other portions, such as to specify decision operations. Thus, optimum program creation methodologies may be used for specifying different respective portions of the process.
    Type: Application
    Filed: March 18, 2002
    Publication date: March 6, 2003
    Applicant: National Instruments Corporation
    Inventors: Nicolas Vazquez, Kevin L. Schultz
  • Publication number: 20030038841
    Abstract: A system and method for specifying a computer-implemented process utilizing two or more different program creation methodologies. In one embodiment, the different program creation methodologies may include specifying steps or operations for the process using graphical input panels, e.g., in a “wizard-based” manner, and using graphical programming techniques for other portions, such as to specify decision operations. Thus, optimum program creation methodologies may be used for specifying different respective portions of the process. At least a portion of the process may be dependent on prior execution results determined by a previous portion of the process. As an example, for a machine vision inspection process, the previous portion of the process may analyze images of a product, and a subsequent portion of the process may depend on the results of the image analysis, e.g., may either accept or reject the product depending on prior execution results of the image analysis portion.
    Type: Application
    Filed: August 27, 2001
    Publication date: February 27, 2003
    Inventors: Nicolas Vazquez, Kevin L. Schultz