Sorry, you need to enable JavaScript to visit this website.

Feedback

Your feedback is important to keep improving our website and offer you a more reliable experience.

Projects that we maintain:

 

Projects where we actively participate:

List of Project Ideas:

SOF

  • Improve SOF topology generator usability.
       Description: To optimize or design a more user friendly topology generator. At this time, the topology generator (https://github.com/thesofproject/sof/tree/master/tools/topology) is written by M4 and the macro language is hard to debug and use. Writing some scripts to make a generator would make generating a topology more easy to debug and user friendly.
       Difficulty: Medium
       Skill Required: C, Python, Bash, or other scripts language.
       Optional Skills: Familiar with ALSA topology (https://www.alsa-project.org/main/index.php/ALSA_topology)
       Hardware required: SOF support Intel PC
       Possible mentor:
           Sridharan, Ranjani (ranjani.sridharan@intel.com)
           Pan, Xiuli (xiuli.pan@intel.com)
  • Port SOF to the ESP32 SoC.
       Description: ESP32 is a popular SoC, featuring WiFi and Bluetooth Low Energy for connectivity, as well as a number of additional peripherals and audio DSP functionality. The SoC is produced by Espressif and is based on the Xtensa LX6 dual-core CPU from Cadence. It belongs to the same architecture as all other DSPs, on which SOF is already running. The result of this project should be running SOF on one of ESP32-based audio kits like https://www.espressif.com/en/products/hardware/esp32-lyratd-msc and enabling as much of its functionality as possible.
       Difficulty: Medium
       Skill Required: C, embedded
       Optional Skills: assembly, hardware
       Hardware requirement: one of ESP32-based audio kits, can be purchased upon project begin
       Possible Mentor: Liakhovetski, Guennadi (guennadi.liakhovetski@intel.com)

 

LibXCam

  • Improve Defog/Dehaze quality and performance.
       Description: To design and tune algorithm based on Dark Channel Prior to improve image quality, especially on Halo removal and color balance. Also need to consider performance improvements based on OpenCL/vulkan/gles in IA platform.
       Difficulty: Medium
       Skill Required: C/C++, OpenCL
       Optional Skills: Familiar with image processing
       Hardware required: Intel Skylake+ based PC
       Possible mentor: Zong, Wei (wei.zong@intel.com)
  • Enable HDR based on different exposure images.
       Description: To investigate HDR algorithms based on 2 or 3 Low, (mid), long exposure images into one clear image. Enable the HDR feature into libxcam (https://github.com/01org/libxcam). Performance improvements based on Intel CPU/GPU also need to be considered.
       Difficulty: Medium
       Skill Required: C/C++/OpenCL
       Optional Skills: OpenCL/OpenCV/Image processing algorithm.
       Hardware Requirement: Intel Skylake+ based PC
       Possible mentor: Zong, Wei (wei.zong@intel.com)
  • Super resolution from low resolution images.
       Description: To investigate super resolution algorithms from low resolution images while keeping a clear edge. Implement the feature into libxcam (https://github.com/01org/libxcam). Parallel computing (OpenCL) for performance must be considered.
       Difficulty: Medium
       Skill Required: C/C++/OpenCL
       Optional Skills: OpenCL/Image processing algorithm.
       Hardware Requirement: Intel Skylake+ based PC
       Possible mentor: Zong, Wei (wei.zong@intel.com)
  • Title: Add face anti-spoofing function for libxcam
      Description: Design and implement an face anti-spoofing solution by using DNN technique and Intel RealSense camera. Add related APIs into libxcam. Cook a sample program to use anti-spoofing API.
      Difficulty: Medium
      Skill Required: C/C++/python
      Optional Skills: OpenCL/OpenCV/Image processing algorithm.
      Requirement: Intel Skylake+ based PC, Intel RealSense camera
      Possible mentor: Wu, Zhiwen (zhiwen.wu@intel.com) Zong, Wei (wei.zong@intel.com)

 

OpenCV

  • Enable Vaapi based HEVC/AVC HW decoder in OpenCV-FFmpeg plugin.
       Description: OpenCV-FFmpeg plugin uses software ffmpeg decoder and vpp. Changing it to hardware-based will speed up the process. We can enable HEVC/AVC HW decoder in OpenCV to add values for video operations.
       Difficulty: Medium
       Skill Required: C, ffmpeg
       Optional Skills: git, c++, Codec knowledge
       Hardware requirement: Intel CPU with integrated GPU since Haswell
       Possible mentor:
           Xu, Guangxin (Guangxin.Xu@intel.com)
           Li, Zhong (zhong.Li@intel.com)
           Wu, Zhiwen (zhiwen.wu@intel.com)
  • OpenCV DNN Vulkan backend optimization.
       Description: Since OpenCV 4.0, a Vulkan-based backend was included in OpenCV DNN module. It uses the Vulkan compute shader to accelerate the DNN operations. For now, it is just a experimental work and has a lot of room for improvement. This project will improve the Vulkan backend performance by providing a more efficient compute shader and implementing layer fusion for the Vulkan backend.
       Difficulty: Medium
       Skill Required: C++, Vulkan, GLSL, DNN knowledge
       Optional Skills: git
       Hardware requirement: Intel CPU with integrated GPU
       Possible mentor: Wu, Zhiwen (zhiwen.wu@intel.com)

 

Gstreamer

  • Enable vaapi based hw decoder on gst-libav
      Description:Gst-libav is an important component in gstreamer. Gstreamer use it to decode/encode almost all video formats in world. However, after many years development, gst-libav still can’t support hw codec. Let us identify the gap and provide necessary patch to fill this gap. The student need modify the gst-libav/gstreamer code to enable hw decoder in gst-libav. The implementation must not copy memory from decoder to renderer(zero copy)
      Difficulty:  Hard
      Skill Required: C, gstreamer
      Optional Skills: git
      Hardware requirement: Intel CPU with integrated GPU since Haswell
      Possible Mentor:
          Xu Guangxin <Guangxin.Xu@intel.com>
          Xiang, Haihao<Haihao.Xiang@intel.com>

 

LibYami

  • Improve libyami based on iHD driver.
       Description: Libyami development was based on the i965 driver, so there are many gaps if co-working with the iHD driver. The target is to improve decoding/encoding/video processing pass rate for libyami co-working with iHD driver.  Also to add missing features in libyami that can be supported in iHD driver, such as ICQ/QVBR encoding modes and rotation/tonemapping filters. 
       Difficulty: Medium
       Skill Required: C/C++
       Optional Skills: git/decoding/encoding/video processing knowledge
       Hardware requirement: Intel CPU with integrated GPU since Skylake
       Possible mentor:
           Li, Zhong (zhong.li@intel.com)
           Xu, Guangxin (Guangxin.Xu@intel.com)