Questions about our CSTE MSc? Join our next drop-in Q&A session, where you can find out more about the MSc course and ask questions directly to the course director and teaching team. Click here to register.

This specialist option of the MSc Computational and Software Techniques in Engineering has been developed to deliver qualified engineers to the highest standard into the emerging field of digital signal and image processing, who are capable of contributing significantly to the increased demand for both real-time and offline systems operating over a range of mobile, embedded and workstation platforms.


  • Start dateSeptember
  • DurationOne year full-time, two-three years part-time
  • DeliveryTaught modules 40%, group project 20%, individual research project 40%
  • QualificationMSc
  • Study typeFull-time / Part-time
  • CampusCranfield campus

Who is it for?

Developed for students interested in software development within the wide spectrum of industries in which digital signal processing and/or digital image processing plays a significant role. Suitable for candidates from a broad range of engineering backgrounds, including aeronautical, automotive, mechanical and electrical engineering, in addition to the more traditional computational sciences background, who wish to both develop and complement their existing skill set in this new area. Part-time students have a flexible commencement date.

Why this course?

This option of the MSc in Computational and Software Techniques in Engineering aims to develop your skill base for the rapidly expanding engineering IT industry sector, not only in the UK but all over the world. Graduates who undertake this option have the opportunity to pursue a wide range of careers embracing telecommunications, the automotive industry, medical imaging, software houses and industrial research, where demand for skills is high.

This course additionally forms part of the ESTIA (Ecole Supérieure des Technologies Industrielles Avancées) Cranfield MSc programme which gives ESTIA students the opportunity to study this degree based either at Cranfield University or ESTIA in Bidart, South-West France.

Cranfield University is very well located for visiting part-time students from all over the world, and offers a range of library and support facilities to support your studies. This enables students to complete their qualification whilst balancing work/life commitments.

Informed by industry

The course is directed by an Industrial Advisory Panel who meet twice a year to ensure that it provides the right mix of hands-on skills and up-to-date knowledge suitable for the wide variety of applications that this field addresses.

A number of members also attend the annual student thesis presentations which take place at the end of July. This provides a good opportunity for students to meet key employers.

The Industry Advisory Panel includes:

  • Black & Veatch Ltd,
  • Stone Rock Advisors,
  • Rolls-Royce,
  • Airbus,
  • Factset,
  • Cambridge Consultants,
  • Industrial Vision,
  • STFC,
  • Excelian,
  • SOLV3 Engineering Ltd,
  • Red Bull Technology,
  • L3 Harris,
  • Autonomous Devices,
  • Immense,
  • The Manufacturing Technology Centre.

Course details

You will complete a number of compulsory modules that are common across options, followed by specialist modules from your selected MSc option. In addition to the taught component, you will complete a group project and an individual research project. The course is delivered via a combination of structured lectures, tutorial sessions and computer-based workshops. Mathematical and computational methods form the basis of the specialist modules, and you will gain programming experience with practical skills in computer vision software.

Course delivery

Taught modules 40%, group project 20%, individual research project 40%

Group project

The group project, which takes place in the spring, is designed to provide you with invaluable experience of delivering a project within an industry-structured team. The project allows you to develop a range of skills, including learning how to establish team member roles and responsibilities, project management, delivering technical presentations and gaining experience of working in teams that include members with a variety of expertise and often with members who are based remotely.

Part-time students are encouraged to participate in a group project as it provides a wealth of learning opportunities. However, an option of an individual dissertation is available if agreed with the Course Director.

Recent group projects include:

  • Real-time robotic sensing,
  • Automatic video surveillance,
  • Face recognition systems,
  • Applied digital signal processing for gear box analysis,
  • Vibro-acoustic analysis of turbine blades.

Individual project

The individual research project allows you to delve deeper into an area of specific interest. It is very common for industrial partners to put forward real-world problems or areas of development as potential research project topics. In general, you will begin to consider the research project after completing three-four modules - it then runs concurrently with the rest of your work.

For part-time students it is common that their research thesis is undertaken in collaboration with their place of work.

Recent idividual research projects include:

  • Vision systems for real time driver assistance,
  • Pattern recognition for vibration analysis,
  • Image stabilisation for UAV video footage,
  • Presenting driver assistance information using augmented reality,
  • Real-time object tracking for intelligent surveillance systems,
  • 3D stereo vision systems for robotics and vehicles.


Keeping our courses up-to-date and current requires constant innovation and change. The modules we offer reflect the needs of business and industry and the research interests of our staff and, as a result, may change or be withdrawn due to research developments, legislation changes or for a variety of other reasons. Changes may also be designed to improve the student learning experience or to respond to feedback from students, external examiners, accreditation bodies and industrial advisory panels.

To give you a taster, we have listed the compulsory and elective (where applicable) modules which are currently affiliated with this course. All modules are indicative only, and may be subject to change for your year of entry.

Course modules

Compulsory modules
All the modules in the following list need to be taken as part of this course.

Computational Methods

Module Leader
  • Dr Irene Moulitsas

    The module aims to provide an understanding of a variety of computational methods for integration, solution of differential equations and solution of linear systems of equations.


    The module explores numerical integration methods; the numerical solution of differential equations using finite difference approximations including formulation, accuracy and stability; matrices and types of linear systems, direct elimination methods, conditioning and stability of solutions, iterative methods for the solution of linear systems.

Intended learning outcomes On successful completion of this module a student should be able to:
1. Implement and use numerical integration methods.
2. Use appropriate techniques to formulate numerical solutions to differential equations.
3. Evaluate properties of numerical methods for the solution of differential equations.
4. Choose and implement appropriate methods for solving differential equations.
5. Evaluate properties of systems of linear equations.
6. Choose and implement appropriate methods for solving systems of linear equations.
7. Evaluate the behaviour of the numerical methods and the numerical solutions.

C++ Programming

Module Leader
  • Dr Irene Moulitsas

    Object oriented programming (OOP) is the standard programming methodology used in nearly all fields of major software construction today, including engineering and science and C++ is one of the most heavily employed languages. This module aims to answer the question ‘what is OOP’ and to provide the student with the understanding and skills necessary to write well designed and robust OO programs in C++. Students will learn how to write C++ code that solves problems in the field of computational engineering, particularly focusing on techniques for constructing and solving linear systems and differential equations. Hands-on programming sessions and assignment series of exercises form an essential part of the course.
    An introduction to the Python language is also provided.

    • The OOP methodology and method, Classes, abstraction and encapsulation;
    • Destructors and memory management, Function and operator overloading, Inheritance and aggregation, Polymorphism and virtual functions, Stream input and output;
    • Templates, Exception handling, The C++ Standard Library and STL.
Intended learning outcomes

On successful completion of this module a student should be able to:

1. Apply the principles of the object oriented programming methodology - abstraction, encapsulation, inheritance and aggregation - when writing C++ programs.
2. Create robust C++ programs of simple to moderate complexity given a suitable specification.
3. Use the Standard Template Library and other third party class libraries to assist in the development of C++ programs.
4. Solve a range of numerical problems in computational engineering using C++.
5. Use development environments and associated software engineering tools to assist in the construction of robust C++ programs.
6. Evaluate existing C++ programs and assess their adherence to good OOP principles and practice.

Management for Technology

Module Leader
  • Dr Richard Adams

    The importance of technology leadership in driving the technical aspects of an organisation's products, innovation, programmes, operations and strategy is paramount, especially in today’s turbulent commercial environment with its unprecedented pace of technological development. As demand for ever more complex products and services has become the norm, one of the challenges for today’s manager is to deal with uncertainty, to allow technological innovation and change to flourish, whilst also remaining within planned parameters of performance. This module helps to develop your understanding of management processes within an organisational context, so that when you seek employment you are equipped with both the extensive subject/discipline knowledge and the ability to relate it to a management context.

    • Engineers and Technologists in organisations:
      • the role of organisations and the challenges facing engineers and technologies,
    • People management:
      • understanding you, understanding other people, working in teams and dealing with conflicts.
    • The Business Environment:
      • understanding the business environment; identifying key trends and their implications for the organisation.
    • Strategy and Marketing:
      • developing effective strategies, focusing on the customer, building competitive advantage, the role of strategic assets.
    • Finance:
      • profit and loss accounts, balance sheets, cash flow forecasting, project appraisal.
    • New product development:
      • commercialising technology, market drivers, time to market, focusing technology, concerns.
    • Business game:
      • Working in teams (companies), you will set up and run a technology company and make decisions on investment, R&D funding, operations, marketing and sales strategy,
    • Negotiation:
      • preparation for negotiations, negotiation process, win-win solutions.
    • Presentation skills:
      • understanding your audience, focusing your message, successful presentations, getting your message across.

Intended learning outcomes

On successful completion of this module you should be able to:

  • Recognise the importance of teamwork in the performance and success of organisations with particular reference to commercialising technological innovation,
  • Operate as an effective team member, recognising the contribution of individuals within the team, and capable of developing team working skills in yourself and others to improve the overall performance of a team,
  • Compare and evaluate the impact of the key functional areas (strategy, marketing and finance) on the commercial performance of an organisation, relevant to the manufacture of a product or provision of a technical service,
  • Design and deliver an effective presentation that justifies and supports any decisions or recommendations made,
  • Argue and defend your judgements through constructive communication and negotiating skills.

Signal Analysis

Module Leader
  • Dr Zeeshan Rana

    The aim of this module is to provide students with the necessary mathematical basis and skills for the study of Computer and Machine Vision.

    • Revision of complex algebra
    • Important generalised functions
    • Series representation of period signals
    • Fourier analysis and the Fourier transforms
    • Convolution and correlation
    • The Sampling theorem
    • The Z transform
    • Probability and statistics: discrete, continuous and special distributions, sampling and estimation, significant tests.

Intended learning outcomes On successful completion of this module a student should be able to critically evaluate and apply concepts of:
1. Complex algebra.
2. Generalised functions, in particular the Dirac Delta function, and the Sampling property as the means for identifying their behaviour.
3. Fourier analysis and Fourier series representing a periodic function.
4. Fourier transform of a continuous function.
5. Convolution and Correlation and associated theorems.
6. Z transform for causal functions.
7. Basic elements of probability and statistics, as necessary for the analysis of signals and images.

Digital Signal Processing

Module Leader
  • Dr Yifan Zhao

    Digital signal processing, a major technology in almost all modern hi-tech applications and products, is at the heart of mobile phones, communications and vibro-acoustical condition Monitoring. The aim of this course is to provide an industry oriented course covering not only the theoretical aspects of classical and advanced time-frequency DSP but also the solid implementation aspects of the subject for students wishing to pursue a career in such areas as communications, speech recognition, bio-medical engineering, acoustics, vibrations, radar and sonar systems and multimedia.

    • Discrete-time signals and systems
    • The correlation of discrete-time signals
    • The discrete Fourier transform
    • The power spectral density
    • The short time Fourier transform
    • The wavelet transform
    • Classical and adaptive digital filtering

Intended learning outcomes On successful completion of this module a student should be able to:
1. Understand and be able to apply the concepts of discrete time signals and systems and correlation of discrete time signals
2. Understand and be able to apply the concept, properties and application of the classical discrete Fourier transform
3. Understand and be able to apply the concepts, properties and application of the non-parametric and parametric estimates of the classical power spectral density
4. Understand and be able to apply the fundamental principles of advanced time-frequency signal processing
5. Understand the concept, properties and application of the advanced time-frequency technique, the short time Fourier transform
6. Understand and be able to apply the concept, properties and application of the advanced time-frequency technique, the wavelet transform
7. Understand and be able to apply the concept, properties and application of digital filtering, including FIR and IIR filters.

Machine Learning and Big Data

Module Leader
  • Dr Salvatore Filippone
    The aim of this module is to introduce students to the MapReduce programming model for big data applications where machine learning algorithms are employed. Specific applications will be developed in the Hadoop/Spark frameworks, combined with the implementation of machine learning data analytics techniques in said frameworks.


    •    Introduction to data stream processing

    •    The MapReduce programming paradigm

    o    Implementations: Hadoop and Spark (Python interface)
    o    NoSQL data backends (e.g. MongoDB)
    o    Other programming interfaces: Scala.
    o    Performance optimization techniques.

    •    Machine Learning Theory & Methodology

    o    Decision Tree Classifiers
    o    Instance Based Learning
    o    Bayesian Classification
    o    Neural Networks
    o    Support Vector Machines
    •    Application case studies

Intended learning outcomes

On successful completion of this module a student should be able to:

  1. Describe and analyse the architecture of DataStream Processing systems based on Hadoop/Spark
  2. Evaluate and assess the applicability ofthe MapReduce programming paradigm to specific problems
  3. Design and implement algorithms for solving data streaming problems in Hadoop/Spark
  4. Evaluate the application of machine learning approaches to a wide set of data mining and classification type problems
  5. Implement and deploy machine-learning techniques in data stream analysis systems.

Image Processing and Analysis

Module Leader
  • Dr Yifan Zhao
    The most powerful method of sensing available to humans is vision. In computing visual information is represented as a digital image. In order to process visual information in computer systems we need to know about processing digital images. Here we focus upon the task of low-level visual processing.
    • Image Applications
    • Image Representation
    • Image Capture Hardware
    • Image Sampling & Noise
    • Image Geometry & Locality, Processing Operations Upon Images
    • Camera Projection / Convolution Model
    • Image Transformation
    • Image Enhancement
Intended learning outcomes On successful completion of this module a student should be able to:
1. Apply, describe and critically evaluate common digital image representations.
2. Apply, describe and critically evaluate a range of local and global image transforms.
3. Apply, describe and critically evaluate image processing in the frequency domain.
4. Apply, describe and critically evaluate basic image feature extraction for simple image comparison tasks.
5. Apply, describe and critically evaluate techniques to counter noise in digital images
6. Apply, describe and critically evaluate basic feature-based image classification.

Computer Vision

Module Leader
  • Dr Zeeshan Rana
    Digital Image Processing allows us to process visual information in computer systems. By processing visual information we can develop automated visual interpretation and understanding – artificial vision, itself a large part of wider field of the Artificial Intelligence. In order to achieve this we must be able to extract high-level visual information such as edges and regions from images and additionally allow for the efficient storage of large amounts of visual data. Here we concentrate on mid-level visual interpretation and image compression.

    • Image Restoration
    • Image Compression
    • Image Feature Extraction and Processing
    • Image Segmentation
    • Basic Feature-based Classification Approaches
    • Stereo Vision and Object Tracking
Intended learning outcomes On successful completion of this module a student should be able to:
1. Apply, describe and critically evaluate the effects and impact of image compression.
2. Apply, describe and critically evaluate methods for image restoration (deblurring).
3. Apply, describe and critically evaluate feature post-processing approaches.
4. Apply, describe and critically evaluate basic feature-based image classification.
5. Understand and apply Stereo Vision.
6. Understand and apply Object Tracking approaches


Module Leader
  • Professor Karl Jenkins

    Computer graphics is a key element in the effective presentation and manipulation of data in engineering software.  The aim of this module is to provide an in depth practical understanding of the mathematical and software principles behind 2D and 3D visualisation using the widely used OpenGL (desktop) and WebGL (web based) graphic libraries. Representative GUI based 2D and 3D OpenGL/WebGL applications using both Javascript/HTML5 and the Qt development environment are employed. The module will also cover some of the more advanced rendering techniques including lighting, texturing and other image mapping methods used to enhance visual interpretation of data. An introduction to the implementation and use of Virtual Reality in engineering completes the module. Hands-on exercises and an assignment supplement the learning process.

    • Mathematical principles behind 2D and 3D visualisation, The graphic and coordinate pipelines, Matrix transformations, Modelling, viewing and projection, OpenGL and WebGL libraries, GLSL shader programming.for the graphic pipeline and GPU
    • Development of interactive CG applications using OpenGL, WebGL, GLSL and Qt,
    • Advanced rendering techniques, lighting, texturing and image mapping
    • Introduction to virtual reality.
Intended learning outcomes

On successful completion of this module a student should be able to:

  1. Apply the principles underlying the graphic and coordinate pipelines to display and manipulate 2D and 3D models. .
  2. Use the mathematical basis behind 2D/3D modelling and viewing to solve visualisation problems in OpenGL and WebGL.
  3. Understand, implement and use GLSL shader programs forimplementing the graphic pipeline
  4. Create interactive visualisation applications using OpenGL/ WebGL, GLSL and Qt.
  5. Evaluate the major differences between the different versions of OpenGL.
  6. Evaluate the use of VRi and other libraries used in engineering visualisation.

Teaching team

Cranfield University is a leader in applied mathematics and computing applications, and you will be taught by experienced Cranfield academic staff. Our staff are practitioners as well as tutors, with clients that include: UK Ministry of Defence, Home Office Scientific Development Branch, Caterpillar, Rolls-Royce and the Department of Transport (DfT). Our teaching team work closely with business and have academic and industrial experience. Knowledge gained working with our clients is continually fed back into the teaching programme, to ensure that you benefit from the very latest knowledge and techniques affecting industry. The course also includes visiting lecturers from industry who will relate the theory to current best practice. In recent years, our students have received lectures from industry speakers including: Jonathan Mckinnell, BBC R&D, Mark Bernhardt, Waterfall Solutions and Andy Lomas, Head of CG, Framestore. The Course Director for this programme is Dr Irene Moulitsas.

Your career

The MSc in Computer and Machine Vision attracts enquiries from companies all over the world who wish to recruit high-quality graduates. There is considerable demand for students with expertise in engineering software development and for those who have strong technical programming skills in industry-standard languages and tools. Graduates of this course will be in demand by commercial engineering software developers, automotive, telecommunications, medical and other industries and research organisations, and have been particularly successful in finding long-term employment.

Some students may go on to pursue degrees on the basis of their MSc research project. Thesis topics are most often supplied by individual companies on in-company problems with a view to employment after graduation - an approach that is being actively encouraged by a growing number of industries.

A selection of companies that have recruited our graduates include:

  • BAE Systems,
  • European Aeronautic Defence and Space Company (EADS),
  • Defence, Science and Technology Laboratory (Dstl),
  • Orange France,
  • Microsoft,
  • EDS Unigraphics,
  • Delcam,
  • GKN Technology,
  • Logica,
  • Oracle Consulting Services,
  • National Power,
  • Altran Technologies,
  • Earth Observation Sciences Ltd,
  • Oracle Consulting Services,
  • Easams Defence Consultancy,
  • Xyratex.
The reason why I wanted to come to Cranfield is because it's one of the best ranked schools. I really like coding and using computational tools to solve engineering problems. I think the course is really relevant and useful for today's digital era.
Cranfield gives good teachers, interesting lectures, updated group projects with the best technology available currently, and most importantly the perfect preparation and connection with industry that helps start your professional career.

I applied for this course as I wanted to be more refined in the computer software field. Beyond the course, I can apply what I have learned in the modules, so that I can achieve a sense of accomplishment in my study. In addition, there are many choices in the topic of the thesis which combines interest and professionalism.

How to apply

Online application form. UK students are normally expected to attend an interview and financial support is best discussed at this time. Overseas and EU students may be interviewed by telephone.