Imager

Overview

Imager™ allows you to virtually prototype imaging systems in order to understand complex system-level tradeoffs and find optimum solutions before investing in hardware. Imager’s™ validated model outputs images as if they came from a real camera. Use Imager’s intuitive interface to independently change camera parameters so you can see their impact on visual image quality and/or algorithm performance.

  • Experiment with new camera architectures, new components, and new materials and truly explore the solution space before getting locked into specific hardware
  • Know how your camera will perform with varying scene content, light levels, dynamic range, and motion without having to create expensive lab setups to capture data.
  • See how your lens design is going to perform when mated with a real sensor and verify that it will meet your end performance goals.
  • Test your ISP or computer vision algorithm performance, find its failures, and make your algorithms more robust
  • Develop the optimum testing and calibration process to maximize yield and minimum testing/calibration time

Join the world’s best Imaging and Computer Vision companies who are using Imager to improve their current products and to design their next generation imaging systems.

How can Imager™ help you?

The following is a set of use cases where our customers have successfully used Imager to address various aspects of their camera system design, analysis, fabrication, test and/or calibration workflows:

Go from a high level concept to specifications – Often a camera design project starts with a goal. Imager helps the camera engineer go from a goal to component specifications while considering the numerous technical and business objectives. Find the right balance between cost and performance and custom vs. off-the-shelf parts. Quantify the tradeoffs and communicate the results using a medium that everyone understands; images.

Improve computer vision algorithm results – Replace your pinhole camera model with a high fidelity model and better understand the impact of changes in lighting, motion, real optical aberrations, system depth of field, high dynamic range, and noise. Introduce known degradations to quantify performance and understand performance bounds. Get to a better solution quicker.

Improve an existing product – With an existing camera product, there are often opportunities to reduce cost, or improve performance by changing to new lens or sensor components. You also have to manage customization requests. It takes a lot of experimentation to understand how component changes are going to influence your system’s performance. Imager predicts your new system’s performance without hardware iterations, allowing you to greatly reduce development costs and risks, and to get your improved product to market quicker.

Understand if your new camera design will meet your goals – Use your virtual camera in a realistic imaging scenario to understand if it is going to meet your goals. Run experiments on your computer, reduce risk, improve confidence in your solution, and then invest in hardware.

Compare systems and understand tradeoffs – There are a lot of ideas about how to make better cameras. Try them out and see if they provide the benefit you hope they will. Understand tradeoffs and easily communicate them to your team.

Determine how to test your new camera hardware – You have a new camera system and now it is time to test it. Determine what you should be testing, what charts you will need, and where you should place them. Maximize your measurement SNR and reduce the risk of passing cameras that should fail.

Understand the impact of camera tolerances – Understand the impact of camera tolerances such as sensor tilts and decenters on your camera system performance. Use your knowledge to improve your calibration process, make your algorithms more robust to errors, or to better specify acceptable sensor alignment tolerances to your manufacturing team.

Communicate and negotiate with vendors – Often yield can be improved if specifications are slightly changed, but it is difficult to visually understand the impact of these changes. Use Imager to visualize if the specification changes will be noticeable and make better decisions about the balance between cost and performance.

Try out your new lens design – You think your lens design will work much better than the last generation lens design. Try it out in your system and see if it meets your expectations. Look at the impact of mismatches between the lens CRA and sensor microlens shifts, see how it will perform in low light conditions, see if hand shake is going to be an issue, and see how sensitive your design is to sensor tilt and decentration.

imager-screen-shot

product2-min

product3-min

Who is Imager for?

Imager is currently being used in the consumer electronics, medical, automotive, security/defense, aerospace, and education areas by the following types of users:

IMAGER FOR THE CAMERA ENGINEER

Develop component specifications and system requirements from ambiguous imaging goals. Visualize component tradeoffs. Get to the right hardware faster with confidence.

  • Deriving component specifications from imaging performance goals is the critical first step in a camera development process. Camera engineers often struggle with hard to define requirements such as:
    • We want the camera to be smaller, but not sacrifice image quality
    • The camera needs to detect objects in low light conditions
    • The vision-based collision avoidance system must continue to work when the camera shakes as it goes through rough terrain.
  • Imager’s simulation workflow enables the camera engineer to define component and system specifications even when starting with ambiguous or ill-defined imaging goals.

Front-Page-Camera-Engineers-min-2

IMAGER FOR COMPUTER VISION AND ALGORITHM DEVELOPERS

Understand where your algorithms work and where they fail. Integrate a realistic virtual camera into your algorithm development workflow.

  • Whether you are developing a new computer vision algorithm, working on a new image signal processing chain, or selecting algorithms to help you accomplish a goal, Imager provides an accurate camera model to help you understand where your algorithm works well and where it fails.
  • With Imager you can specify exactly how you want to degrade your image or video, where all degradations match what you will see with real cameras. This not only gives you ground truth in position and angle, but also in signal to noise, motion, and degradation to image quality due to lens distortion and aberrations.
  • With Imager’s command line API, you can integrate outputs from Imager’s image simulation engine directly into your programming language of choice allowing you to integrate a virtual prototype of a camera system right into your current development workflow.

Front-Page-Algorithm-Developers-min-1

IMAGER FOR EDUCATION

Whether you are on the job, or pursuing an education in optics, robotics, image quality, or computer vision, build intuition and become an expert.

  • Cameras consist of optical, electrical, firmware, and software components. A majority of today’s camera engineers learn the interplay between these components on the job.
  • Imager shows the effects of different components, e.g. radiometry, lens blur, sensor noise and signal processing, and assists you in rapidly developing an understanding of how each camera component affects image quality and algorithm performance.

Front-Page-Education-min-1

How can FiveFocal help you?

Are you new to simulation or do you not have the time to setup your full system model?

Don’t worry, FiveFocal also offers services to help you integrate advanced simulation and modeling into your workflow. With over 100 projects under our belt, we know how to best use Imager for meeting your project goals and we can teach you what we know. In addition to helping you integrate Imager into your engineering workflow, we can also support you by generating custom scripts and/or by customizing Imager based on your project needs.  For more information click here.

 

Resources and Examples

Operating Systems

Windows 7 (64-bit), 8 (64-bit), 10 (64-bit)
Mac OS X 10.10, 10.11