Home > Services > Image Processing

Image Processing

Image Processing






Image Processing Applications

Image Processing is seen and used in different fields of human activities. For example, in medicine Image Processing is applied for both diagnostic and therapeutic purposes. Processing of images obtained from satellites is widespread task in the space sector. Also, Image Processing is used in the entertainment, e.g. shooting movies.
Finally, it is well-known that Image Processing is needed in almost all computer vision applications.

Simmakers Image Processing Offerings

Since our team has been specializing in the development and implementation of complex Image Processing algorithms for more than 10 years, we are ready to solve the most challenging task for you.
 
Our offerings include:
 

  • Linear and Non-Linear Filtering
  • Filtering in the Spatial and Frequency Domains
  • Wavelet Analysis with Applications to Image Processing
  • Image Denoising
  • Image Deblurring
  • Image Recovery
  • Image Compression
  • Morphological Image Processing
  • Image Segmentation
  • Image Recognition
  • Image Super Resolution
  • Image Pansharpening


Simmakers ltd collaborates with the world’s leading research centers – the Massachusetts Institute of Technology (MIT) and the University of California, Los Angeles (UCLA).

Organizations Simmakers partners with

Why Clients Choose Simmakers

With Simmakers, you get a competent solution created by highly qualified specialists in  data mining, image processing, software engineering and applied mathematics.

Tasks, performed by Simmakers specialists:

We have several advantages that allow us to solve problems successfully:

     

  • Partnership with NVIDIA. Being partners with NVIDIA , the world’s largest producer of graphics cards and GPUs, we apply the corporation’s latest achievements in the development of IT-solutions in computer graphics, data visualization and parallelization of computations.
  • Extensive experience. Cooperating with customers from North America, Western Europe, Russia for more than a decade, our specialists have completed more than 30 complex projects on data visualization and computer simulation of physical and technological processes for various industries, including construction engineering, oil and gas extraction, metallurgy, film industry, healthcare, arts, etc.
  • Profound technological expertise. Simmakers specialists have won high recognition and international awards in various fields and are professionals in applied mathematics, IT and software development. We actively collaborate with the leading international research and development centers, such as the Massachusetts Institute of Technology (MIT), the University of California (UCLA) and the Skolkovo Institute of Science and Technology.
  • Custom-tailored service. In the development of IT solutions, we make the demands and needs of each customer as our highest priority. This approach allows us to develop trusting and mutually beneficial relations with customers resulting in beneficial effect on the efficiency of project implementation.
Case studies

Listed below are some of our featured projects.

 
Deformable Registration
Deformable Registration
 
Thermosim
 
Ecoview
 
Backend for OSL Functions
 
Acceleration of Image Processing
 
Software-Studio for Image Processing
 
Emotion Recognizer
Technologies

If you are looking for a company with a strong background in both low-level and high-level programming, then you have come to the right place. With expertise in highly specialized technologies and specific programming languages, our IT engineers will ensure you successfully implement your Image Processing project objectives.

Take advantage of our best practices in the following fields of study:

Programming languages:

Technologies:

  • C CUDA
  • C OpenCL
  • C# .NET
  • C++ 03/11/14
  • Matlab
  • Java
  • Python
  • OpenGL modern
  • CUDA  (including PTX)
  • DirectX
  • OpenCL
  • Processing (Java)
  • Qt 3D
  • WPF (.NET C#)
  • OpenGL ES (mobile)

Image processing libraries:

Graphics applications used (plugins development):

  • OpenCV
  • Boost GIL
  • Magick++
  • CImg
  • AForge.Net
  • ImageJ
  • Scikit-image
  • Blender
  • Maya
  • VRay
  • 3DSMax
  • Aurora
  • Foundry Nuke
  • Cinema 4D
Frequently Asked Questions (FAQ)

Q: What is Image Processing?
A: Any form of signal processing for which the input data is an image or a set of images is called by Image Processing.

Q: What is Image Denoising?
A: Image Denoising is the process of removing noise from an image. There are well-known denoising techniques, such as total variation denoising, neighborhood filters, non-local means and so on.

Q: What is Image Deblurring?
A: Usually taking photos, we want the recorded image to be a faithful representation of the scene that we see – but every image is more or less blurry. There are different causes of blurry photos. So, for examples, an image that is out of focus will appear blurry. Also blur appears when the subject moves while the shutter is open, or the camera moves while the shutter is open. Image Deblurring is the process of removing blur from an image. Thus, Image Deblurring is fundamental in making pictures sharp and useful. Many deblurring methods were designed. For example, Wiener filters, Richardson–Lucy deconvolution, Tikhonov regularization and so on.

Q: What is Image Compression?
A: Image Compression is an application of data compression that transforms and encodes the original image with few bits. The purpose of image compression is to minimize the redundancy of the image and to store or transmit data in an efficient form. Image compression may be lossy or lossless. Lossless compression is preferred for medical imaging, technical drawings and so. Lossy compression methods, especially when used at low bit rates, introduce compression artifacts. Lossy methods are especially convenient for natural images such as photographs. In applications minor (sometimes imperceptible) loss of fidelity is acceptable to achieve a substantial reduction in bit rate.

Q: What is Morphological Image Processing?
A: Morphological Image Processing is a collection of non-linear operations related to the shape or morphology of features in an image. Morphological operations rely only on the relative ordering of pixel values, not on their numerical values, and therefore are especially suited to the processing of binary images.

Q: What is Image Recognition?
A: By Image Recognition we call the process of identifying and detecting an object or a feature in a digital image or video. This concept is used in many applications like systems for factory automation, toll booth monitoring, and security surveillance. Typical image recognition algorithms include:

  • Optical character recognition, i.e. the electronic conversion of images of typewritten or printed text into machine-encoded text;
  • Pattern and gradient matching;
  • Face recognition, i.e. automatic identifying or verifying a person from a digital image or a video frame from a video source;
  • License plate matching;
  • Scene change detection.

Q: What is Image Segmentation?
A: Image Segmentation is the process of partitioning a digital image into multiple segments (sets of pixels, also known as superpixels). The goal of segmentation is to simplify and/or change the representation of an image into something that is more meaningful and easier to analyze. In other words, Image Segmentation is the task of finding groups of pixels that “go together”. In statistics, this problem is known as cluster analysis and is a widely studied area with hundreds of different algorithms.

Q: What is Image Pansharpened?
A: Pansharpening is a process of merging high-resolution panchromatic and lower resolution multispectral imagery to create a single high-resolution color image. This technique often is used in satellite image processing to increase image quality. In this case, pansharpening produces a high-resolution color image from three, four or more low-resolution multispectral satellite bands plus a corresponding high-resolution panchromatic bands.

Q: What is Image Super Resolution?
A: Superresolution is a technique that enhance the resolution of an imaging system beyond their sensor and optics limits. Super-resolution can combine set of low resolution images to obtain a single image of higher resolution. Also there is known algorighms which produce high resolution image using single image.

Submit Your Case

Name:
E-mail:
Phone:
Organization:
Position:
Please describe your task:

Dmitry and his Simmakers team are world class professionals — pleasure to work with. Would be happy to continue working with them.

Len Charni
CEO
Quakeup Media Production, Inc. Canada

 

Read other testimonials

To learn more about our Image Processing services, please call us at +375 17 286 33 16 or use the contact form.
Check other software development services:
CAD/CAM/CAE
GPU
Simulation
Big Data
3D Applications
Web and mobile
GIS

Project name: Deformable Registration Algorithm Implementation
Project implementation: 2010.
Tags:
deformable registration, MATLAB, image deform, grid, mesh.

Technologies: MATLAB.

Client: Tomographix IP Ltd. (Canada)

 

Medical image matching – registration algorithms that deforms one image in a non-rigid [non-linear, elastic] manner to another. Assistance with the implementation of a particular algorithm from the theory in a specific academic – scientific paper.

Project name: Thermosim 2.0
Project implementation: 2003-2006

Technologies: C++, C#, .NET Framework: WinForms, Windows Presentation Foundation; Managed DirectX, OpenCascade, FORTRAN, XML, MS SQL.

Sector: Manufacturing

 

Software package supports 3D graphics for visualization physical fields in point of time. There are also many possibilities for creating of various diagrams that allow to carry out process analysis and optimization.

 

Technical features:

• 3D-modeling of temperature, hardness, stress and deformation fields

• Taking into account phase changes and stress relaxations

• Prediction of cracks forming

• Integrated database of steel properties

• Ability to use experimental data for training of neural networks

Project name: Ecoview
Project implementation: 2007-2010

Technologies: C++, C#, FORTRAN, .NET Framework: WinForms, Windows Presentation Foundation, Managed DirectX, OpenGL, CUDA, XML, ADO .Net.
Sector: Environment

 

EcoView software will provide tools for every phase of contaminants transport simulations, pollution impact assessment and pollution risk analyzing. In addition, EcoView will consider the modeling of heat, water transport in the soil etc., runoff processes, contaminants transport in groundwater and to surface water systems (rivers, lakes, bays).

Project name: Backend for OSL Functions
Project implementation: 2013-2014

Technologies: C++, OpenGL, GLSL, CUDA, PTX, LLVM, LLVM-IR.

Client: Spectral Pixel (Belgium)

 
The aim of the project was to create a new backend for a specialized set of functions of the OpenShadingLanguage shader language (initially it only existed in CPU implementation, using LLVM to optimize and generate a binary code). The problem was significantly complicated by the necessity to develop executable code for the GPU, which was intended to accelerate the operation of the main application.
 
The following approaches for solving this problem were studied and analyzed:

1) direct conversion of OSL sourcecodes into the GLSL shader language;
2) obtaining intermediate GPU adapted LLVM-IR bitecode with subsequent linking on libdevice for PTX generation;
3) obtaining an intermediate LLVM-IR structure which is then adapted for GPU architecture, with subsequent manual output to GLSL shaders.
 
Because of the specific nature of the main application, the third strategy was chosen. We obtained a GLSL code generator for the specific set of OSL functions, maintaining intermediate OSL optimization to apply on shader networks, for overall multiple performance improvement.

Project name: Acceleration of Image Processing
Project implementation: 2010-2011

Technologies: C#, С++, CUDA API (SDK).

Client: Spectral Pixel (Belgium)

 

The main aim of the project was to accelerate the process of image rendering in the Spectral Studio © software, aimed at creating photorealistic images of objects from 3D models.
To facilitate this, a GPU-version of the “Aurora Renderer” module was created, including a new CUDA implementation of ray-tracer, using a specially created structure called BVH (Bounding Volume Hierarchy) to optimize and accelerate operation.
Once all the optimizations for the “Aurora Renderer” module were implemented, a tenfold acceleration of image creation on video cards was achieved.

Project name: Software-Studio for Image Processing
Project implementation: 2011

Technologies: C#, WPF 3.5, OpenDiagram, GLSL.

Client: Spectral Pixel (Belgium)

 
The project was aimed at creating image processing software using graphics shaders. A sequence of GLSL shaders was created, each with a special graphic effect, such as digital noise or image blur, on an image. This shader structure was arranged in a special “visual node” network, which permitted:
• the construction on a tree of effects for image processing
• the interactive alteration of the parameters of each effect
• the visualization of the application of a built tree of effects and the respective parameter settings.
 
The result was the creation of GLSL code conforming to the built tree of effects. This code allows the same effect to be processed on a video card for any other image, significantly reducing the processing time and relieving the CPU while allowing for the creation of professional series of effects for the film industry, amongst other things
The user interface was implemented with WPF technology for the Windows XP OS.

Project name: Emotion Recognizer
Project implementation: 2010.

Tags: face recognition, image processing, emotion detection.

Technologies: MATLAB

Client: University of East Anglia (UK)

 

In the program implemented:

  • Graphical data reading, image processing, face detection on the complex background
  • Principal component analysis
  • Emotion recognition using classifier based on Fisher linear discriminant analysis