This presentation discusses the open standards and software tools needed to enable vision processing for autonomous vehicles. It focuses on the hardware and software platforms that can deliver results, the tools to build solutions for those platforms, and open standards that allow solutions to interoperate. The presentation advocates for using graph programming and C++-based approaches like SYCL, along with open standards like SPIR-V and HSA, to develop software today that can run on future platforms and achieve full autonomy.
NVIDIA OpenGL and Vulkan Support for 2017Mark Kilgard
Learn how NVIDIA continues improving both Vulkan and OpenGL for cross-platform graphics and compute development. This high-level talk is intended for anyone wanting to understand the state of Vulkan and OpenGL in 2017 on NVIDIA GPUs. For OpenGL, the latest standard update maintains the compatibility and feature-richness you expect. For Vulkan, NVIDIA has enabled the latest NVIDIA GPU hardware features and now provides explicit support for multiple GPUs. And for either API, NVIDIA's SDKs and Nsight tools help you develop and debug your application faster.
NVIDIA booth theater presentation at SIGGRAPH in Los Angeles, August 1, 2017.
http://www.nvidia.com/object/siggraph2017-schedule.html?id=sig1732
Get your SIGGRAPH driver release with OpenGL 4.6 and the latest Vulkan functionality from
https://developer.nvidia.com/opengl-driver
The document discusses optimizing computer vision applications for cross-platform use. It describes conflicting requirements around being cross-platform versus utilizing specific device capabilities. Possible solutions discussed include optimizing for ARM NEON, a single platform, or all platforms. The document then introduces FastCV, a cross-platform computer vision library from Qualcomm that provides optimized implementations for different processors like Snapdragon to gain performance benefits while supporting multiple platforms.
Bryce Harrington, Senior Graphics Engineer with the Samsung Open Source Group, compares two 2-D drawing libraries (Cairo and Skia), including showcasing work on a testing framework (Caskbench) for measuring performance of these two systems
Flink Forward Berlin 2018: Thomas Weise & Aljoscha Krettek - "Python Streamin...Flink Forward
Python is popular amongst data scientists and engineers for data processing tasks. The big data ecosystem has traditionally been rather JVM centric. Often Java (or Scala) are the only viable option to implement data processing pipelines. That sometimes poses an adoption barrier for organizations that have already invested in other language ecosystems. The Apache Beam project provides a unified programming model for data processing and its ongoing portability effort aims to enable multiple language SDKs (currently Java, Python and Go) on a common set of runners. The combination of Python streaming on the Apache Flink runner is one example. Let’s take a look how the Flink runner translates the Beam model into the native DataStream (or DataSet) API, how the runner is changing to support portable pipelines, how Python user code execution is coordinated with gRPC based services and how a sample pipeline runs on Flink.
Flink Forward Berlin 2018: Robert Bradshaw & Maximilian Michels - "Universal ...Flink Forward
This document introduces Apache Beam, a unified model for batch and stream processing, and discusses its portability across languages and backends. It also introduces TFX, a TensorFlow tool for building end-to-end machine learning pipelines that addresses data collection, preprocessing, analysis, serving, and monitoring using components like TensorFlow Transform and TensorFlow Model Analysis. A demo of TFX's model analysis capabilities on a Chicago taxi dataset is provided.
The document summarizes a presentation on the Project P project for developing model compilers for safety critical systems. Some key points:
- Project P developed a generic framework and code generator called QGEN to generate code from models in languages like Simulink and Stateflow to languages like C and Ada.
- The framework and QGEN were qualified up to DO-178C level TQL1 to allow their use in safety critical systems.
- Case studies demonstrated the use of QGEN at companies like Thales Alenia Space to generate Ada code for a spacecraft attitude control system from Simulink models.
NVIDIA OpenGL and Vulkan Support for 2017Mark Kilgard
Learn how NVIDIA continues improving both Vulkan and OpenGL for cross-platform graphics and compute development. This high-level talk is intended for anyone wanting to understand the state of Vulkan and OpenGL in 2017 on NVIDIA GPUs. For OpenGL, the latest standard update maintains the compatibility and feature-richness you expect. For Vulkan, NVIDIA has enabled the latest NVIDIA GPU hardware features and now provides explicit support for multiple GPUs. And for either API, NVIDIA's SDKs and Nsight tools help you develop and debug your application faster.
NVIDIA booth theater presentation at SIGGRAPH in Los Angeles, August 1, 2017.
http://www.nvidia.com/object/siggraph2017-schedule.html?id=sig1732
Get your SIGGRAPH driver release with OpenGL 4.6 and the latest Vulkan functionality from
https://developer.nvidia.com/opengl-driver
The document discusses optimizing computer vision applications for cross-platform use. It describes conflicting requirements around being cross-platform versus utilizing specific device capabilities. Possible solutions discussed include optimizing for ARM NEON, a single platform, or all platforms. The document then introduces FastCV, a cross-platform computer vision library from Qualcomm that provides optimized implementations for different processors like Snapdragon to gain performance benefits while supporting multiple platforms.
Bryce Harrington, Senior Graphics Engineer with the Samsung Open Source Group, compares two 2-D drawing libraries (Cairo and Skia), including showcasing work on a testing framework (Caskbench) for measuring performance of these two systems
Flink Forward Berlin 2018: Thomas Weise & Aljoscha Krettek - "Python Streamin...Flink Forward
Python is popular amongst data scientists and engineers for data processing tasks. The big data ecosystem has traditionally been rather JVM centric. Often Java (or Scala) are the only viable option to implement data processing pipelines. That sometimes poses an adoption barrier for organizations that have already invested in other language ecosystems. The Apache Beam project provides a unified programming model for data processing and its ongoing portability effort aims to enable multiple language SDKs (currently Java, Python and Go) on a common set of runners. The combination of Python streaming on the Apache Flink runner is one example. Let’s take a look how the Flink runner translates the Beam model into the native DataStream (or DataSet) API, how the runner is changing to support portable pipelines, how Python user code execution is coordinated with gRPC based services and how a sample pipeline runs on Flink.
Flink Forward Berlin 2018: Robert Bradshaw & Maximilian Michels - "Universal ...Flink Forward
This document introduces Apache Beam, a unified model for batch and stream processing, and discusses its portability across languages and backends. It also introduces TFX, a TensorFlow tool for building end-to-end machine learning pipelines that addresses data collection, preprocessing, analysis, serving, and monitoring using components like TensorFlow Transform and TensorFlow Model Analysis. A demo of TFX's model analysis capabilities on a Chicago taxi dataset is provided.
The document summarizes a presentation on the Project P project for developing model compilers for safety critical systems. Some key points:
- Project P developed a generic framework and code generator called QGEN to generate code from models in languages like Simulink and Stateflow to languages like C and Ada.
- The framework and QGEN were qualified up to DO-178C level TQL1 to allow their use in safety critical systems.
- Case studies demonstrated the use of QGEN at companies like Thales Alenia Space to generate Ada code for a spacecraft attitude control system from Simulink models.
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...CEE-SEC(R)
Michael Wong presented on how SYCL and heterogeneous programming can help develop software for self-driving cars. He discussed that graph programming is well-suited for machine vision and machine learning tasks required for autonomous vehicles. SYCL combines C++ and OpenCL to allow developing software today targeting a wide range of future accelerator hardware through its use of open standards and ability to build computation graphs at compile-time. Codeplay provides products like ComputeCpp that implement SYCL and help deliver embedded intelligence.
Codeplay Software - Open Standards for Automotive Vision Processing & Machine...Charles Macfarlane
The document discusses standards and approaches for developing software for advanced driver assistance systems and machine learning applications. It advocates for using a layered approach with graph programming on top of open standards like OpenCL, SYCL and TensorFlow to enable portability across heterogeneous hardware. Codeplay provides tools that implement these standards like ComputeAorta and ComputeCpp to help customers develop embedded intelligence applications.
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...Embarcados
Nesse webinar será apresentado o passo a passo de como criar projetos com Machine Learning utilizando ferramentas de terceiros como Sensi ML e Edge Impulse.
Tópicos que serão apresentados:
Kits de desenvolvimento para Machine Learning:
EV18H79A: SAMD21 ML Evaluation Kit with TDK 6-axis MEMS
EV45Y33A: SAMD21 ML Evaluation Kit with BOSCH IMU
SAMC21 xPlained Pro evaluation kit (ATSAMC21-XPRO) plus its QT8 xPlained Pro Extension Kit (AC164161)
Ferramentas de desenvolvimento:
MPLAB X
Data Visualizer
Ambiente de terceiros: Sensi ML e Edge Impulse
Coleta de dados
Como desenvolver um projeto usando Machine Learning sem conhecimentos específicos sobre o assunto e com conhecimentos sobre Machine Learning.
This document discusses debugging tools for the Mesa library. It begins with introductions and then covers Mesa environment variables, basic debugging tools like printf and static analyzers, using GDB for debugging, tools like Apitrace and Frameretrace for capturing OpenGL calls, and Piglit for running automated tests on OpenGL implementations. It also provides tips for debugging Steam games with Mesa like determining the process ID and attaching GDB or customizing the launch environment.
For the full video of this presentation, please visit:
http://www.embedded-vision.com/platinum-members/synopsys/embedded-vision-training/videos/pages/may-2016-embedded-vision-summit-mirchandaney
For more information about embedded vision, please visit:
http://www.embedded-vision.com
Seema Mirchandaney, Engineering Manager for Software Tools at Synopsys, presents the "Using the OpenCL C Kernel Language for Embedded Vision Processors" tutorial at the May 2016 Embedded Vision Summit.
OpenCL C is a programming language that is used to write computation kernels. It is based on C99 and extended to support features such as multiple levels of memory hierarchy, parallelism and synchronization. This talk focuses on the benefits and ease of programming vision-based kernels by using the key features of OpenCL C. In addition, Mirchandaney describes language extensions that allow programmers to take advantage of hardware features typical of embedded vision processors, such as wider vector widths, sophisticated accumulator forms of instructions, and scatter/gather capabilities. This talk also addresses advanced topics, such as whole function vectorization support available in the compiler and the benefits of hardware support for predication in the context of lane-based control flow and OpenCL C.
JIT Spraying Never Dies - Bypass CFG By Leveraging WARP Shader JIT Spraying.pdfSamiraKids
This document discusses bypassing Control Flow Guard (CFG) via Windows Advanced Rasterization Platform (WARP) shader Just-In-Time (JIT) spraying. It begins with background on Direct3D, WARP, shaders, and WebGL. It then explains the basic principle of CFG and known bypass methods. The presentation will demonstrate a new JIT spraying technique to bypass CFG by circumventing restrictions on the WARP JIT engine and reliably achieving CFG bypass. It concludes with a live demo of bypassing CFG on Internet Explorer 11 and Microsoft Edge on Windows 10.
Automatic License Plate Recognition using OpenCVEditor IJCATR
Automatic License Plate Recognition system is a real time embedded system which automatically recognizes the license plate of vehicles. There are many applications ranging from complex security systems to common areas and from parking admission to urban traffic control. Automatic license plate recognition (ALPR) has complex characteristics due to diverse effects such as of light and speed. Most of the ALPR systems are built using proprietary tools like Matlab. This paper presents an alternative method of implementing ALPR systems using Free Software including Python and the Open Computer Vision Library.
Automatic License Plate Recognition using OpenCV Editor IJCATR
Automatic License Plate Recognition system is a real time embedded system which automatically recognizes the license plate of vehicles. There are many applications ranging from complex security systems to common areas and from parking admission to urban traffic control. Automatic license plate recognition (ALPR) has complex characteristics due to diverse effects such as of light and speed. Most of the ALPR systems are built using proprietary tools like Matlab. This paper presents an alternative method of implementing ALPR systems using Free Software including Python and the Open Computer Vision Library.
For the full video of this presentation, please visit:
https://www.embedded-vision.com/platinum-members/intel/embedded-vision-training/videos/pages/may-2017-embedded-vision-summit-pisarevsky
For more information about embedded vision, please visit:
http://www.embedded-vision.com
Vadim Pisarevsky, Software Engineering Manager at Intel, presents the "Making OpenCV Code Run Fast" tutorial at the May 2017 Embedded Vision Summit.
OpenCV is the de facto standard framework for computer vision developers, with a 16+ year history, approximately one million lines of code, thousands of algorithms and tens of thousands of unit tests. While OpenCV delivers decent performance out-of-the-box for some classical algorithms on desktop PCs, it lacks sufficient performance when using some modern algorithms, such as deep neural networks, and when running on embedded platforms. Pisarevsky examines current and forthcoming approaches to performance optimization of OpenCV, including the existing OpenCL-based transparent API, newly added support for OpenVX, and early experimental results using Halide.
He demonstrates the use of the OpenCL-based transparent API on a popular CV problem: pedestrian detection. Because OpenCL does not provide good performance-portability, he explores additional approaches. He discusses how OpenVX support in OpenCV accelerates image processing pipelines and deep neural network execution. He also presents early experimental results using Halide, which provides a higher level of abstraction and ease of use, and is being actively considered for future support in OpenCV.
For the full video of this presentation, please visit:
http://www.embedded-vision.com/platinum-members/embedded-vision-alliance/embedded-vision-training/videos/pages/may-2015-embedded-vision-summit-opencv
For more information about embedded vision, please visit:
http://www.embedded-vision.com
Gary Bradski, President and CEO of the OpenCV Foundation, presents the "OpenCV Open Source Computer Vision Library: Latest Developments" tutorial at the May 2015 Embedded Vision Summit.
OpenCV is an enormously popular open source computer vision library, with over 9 million downloads. Originally used mainly for research and prototyping, in recent years OpenCV has increasingly been used in deployed products on a wide range of platforms from cloud to mobile.
The latest version, OpenCV 3.0 is currently in beta, and is a major overhaul, bringing OpenCV up to modern C++ standards and incorporating expanded support for 3D vision. The new release also introduces a modular “contrib” facility that enables independently developed modules to be quickly integrated with OpenCV as needed, providing a flexible mechanism to allow developers to experiment with new techniques before they are officially integrated into the library.
In this talk, Gary Bradski, head of the OpenCV Foundation, provides an insider’s perspective on the new version of OpenCV and how developers can utilize it to maximum advantage for vision research, prototyping, and product development.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2022/08/open-standards-powering-the-future-of-embedded-vision-a-presentation-from-the-khronos-group/
Neil Trevett, President of the Khronos Group and Vice President of Developer Ecosystems at NVIDIA, presents the “Open Standards: Powering the Future of Embedded Vision” tutorial at the May 2022 Embedded Vision Summit.
Open standards play an important role in enabling interoperability for efficient deployment of vision-based systems. In this session, Trevett shares an update on the family of Khronos Group standards for programming and deploying accelerated inferencing and embedded vision, including OpenCL, Vulkan Safety Critical, OpenVX, SYCL and NNEF.
Trevett discusses the evolving roadmap for these standards and provides insights to help you understand which standards are relevant to your projects. In addition, he introduces the new Khronos Embedded Camera API initiative. Trevett outlines the technical direction of the Embedded Camera API working group to create an open standard to streamline the integration and control of sophisticated embedded camera systems, and highlights how attendees can participate in this important industry initiative.
At the event was discussed what the developer can use to repair an application or a game if it has graphic display problems. Also, speakers gave an overview of the Mesa library and its development process.
This presentation by Vadym Shovkoplias and Andrew Khulap (Senior Software Engineers, Consultants, GlobalLogic), was delivered at GlobalLogic Kharkiv Embedded TechTalk #2 on June 4, 2018.
Video: https://youtu.be/pT1Y81KGHkM
The document discusses various graphics libraries used for 3D rendering. It describes PHIGS, the first standard for 3D graphics, and its features including a scene graph and centralized structure store. OpenGL is introduced as the most widely adopted library, providing a programming interface and graphics pipeline. Direct3D is presented as Microsoft's API for Windows, focused on gaming performance. Key differences between OpenGL and Direct3D are portability, functionality, and performance.
mloc.js 2014 - JavaScript and the browser as a platform for game developmentDavid Galeano
JavaScript and the browser can be a viable platform for game development, as demonstrated by games like Polycraft and a Quake 4 demo ported to JavaScript. However, to reach the level of native applications, improvements are needed in areas like memory usage, parallelism, and floating point performance. Specifically, typed objects could help memory usage, a task-based parallelism API could improve multi-core support, and SIMD and single-precision floats could enhance performance of common game operations like vectors and matrices.
Over the last few years the quality of Mesa's drivers has increased
exponentially, to the point where many prefer the use of the open source driver
to their proprietary counterparts. Open source drivers can have better
compatibility, less bugs, and more frequent updates to resolve issues. Because
of this uptick in quality, you may want to run the open source drivers on other
operating systems such as Android.
In this talk we will explore the work that was required to get Freedreno
running on Android. This will include setting up the development environment,
loading the driver on real hardware, development tips & tricks, running tests,
setup of debugging environment, issues encountered during the porting process,
and lastly we will explore some areas of Mesa that could be updated to simplify
porting to other operating systems. This talk should provide a guide for anyone
looking to get their Mesa driver running on Android.
(c) X.Org Developer's Conference (XDC) 2023
October 17-19, 2023
A Coruña (Spain)
https://indico.freedesktop.org/event/4/
OpenCL & the Future of Desktop High Performance Computing in CADDesign World
Modern desktop computers have more compute capabilities than ever before. Most of these systems include both a central processing unit (CPU) and a graphics processing unit (GPU), each consisting of multiple computing cores providing tremendous processing power. To date, harnessing the total processing power of a desktop workstation, fully utilizing both the CPU and GPU, has proven difficult for software developers. CPUs and GPUs have few similarities in both design and programming models. OpenCL is the tool that bridges the gap for software developers and enables them to fully tap into the power of both processors with a single software programming interface.
This presentation will examine the details of CPUs and GPUs, explore their differences and similarities, and highlight the computing power they can provide. We will also take a look OpenCL, what it is, what it does, and how this new computing interface will change the way software developers create software and help end users fully realize the compute power contained within today’s modern desktop computers.
Clojure: Programming self-optimizing webapps in LispStefan Richter
Bandit Algorithms in Clojure. Uploaded 2017, but it is actually a talk from 2013. Bandit Algorithms are reinforcement learning algorithms. They are really great for automating the A/B testing of important features. The talk shows how to package and call Clojure code in a way that it can be called from Java or other JVM languages, too.
This document provides an overview of distributed deep learning on Spark. It begins with a brief introduction to machine learning and deep learning. It then discusses why distributed systems are needed for deep learning due to the computational intensity. Spark is identified as a framework that can be used to build distributed deep learning systems. Two examples are described - SparkNet, which was developed at UC Berkeley, and CaffeOnSpark, developed at Yahoo. Both implement distributed stochastic gradient descent using a parameter server approach. The document concludes with demonstrations of Caffe and CaffeOnSpark.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...CEE-SEC(R)
Michael Wong presented on how SYCL and heterogeneous programming can help develop software for self-driving cars. He discussed that graph programming is well-suited for machine vision and machine learning tasks required for autonomous vehicles. SYCL combines C++ and OpenCL to allow developing software today targeting a wide range of future accelerator hardware through its use of open standards and ability to build computation graphs at compile-time. Codeplay provides products like ComputeCpp that implement SYCL and help deliver embedded intelligence.
Codeplay Software - Open Standards for Automotive Vision Processing & Machine...Charles Macfarlane
The document discusses standards and approaches for developing software for advanced driver assistance systems and machine learning applications. It advocates for using a layered approach with graph programming on top of open standards like OpenCL, SYCL and TensorFlow to enable portability across heterogeneous hardware. Codeplay provides tools that implement these standards like ComputeAorta and ComputeCpp to help customers develop embedded intelligence applications.
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...Embarcados
Nesse webinar será apresentado o passo a passo de como criar projetos com Machine Learning utilizando ferramentas de terceiros como Sensi ML e Edge Impulse.
Tópicos que serão apresentados:
Kits de desenvolvimento para Machine Learning:
EV18H79A: SAMD21 ML Evaluation Kit with TDK 6-axis MEMS
EV45Y33A: SAMD21 ML Evaluation Kit with BOSCH IMU
SAMC21 xPlained Pro evaluation kit (ATSAMC21-XPRO) plus its QT8 xPlained Pro Extension Kit (AC164161)
Ferramentas de desenvolvimento:
MPLAB X
Data Visualizer
Ambiente de terceiros: Sensi ML e Edge Impulse
Coleta de dados
Como desenvolver um projeto usando Machine Learning sem conhecimentos específicos sobre o assunto e com conhecimentos sobre Machine Learning.
This document discusses debugging tools for the Mesa library. It begins with introductions and then covers Mesa environment variables, basic debugging tools like printf and static analyzers, using GDB for debugging, tools like Apitrace and Frameretrace for capturing OpenGL calls, and Piglit for running automated tests on OpenGL implementations. It also provides tips for debugging Steam games with Mesa like determining the process ID and attaching GDB or customizing the launch environment.
For the full video of this presentation, please visit:
http://www.embedded-vision.com/platinum-members/synopsys/embedded-vision-training/videos/pages/may-2016-embedded-vision-summit-mirchandaney
For more information about embedded vision, please visit:
http://www.embedded-vision.com
Seema Mirchandaney, Engineering Manager for Software Tools at Synopsys, presents the "Using the OpenCL C Kernel Language for Embedded Vision Processors" tutorial at the May 2016 Embedded Vision Summit.
OpenCL C is a programming language that is used to write computation kernels. It is based on C99 and extended to support features such as multiple levels of memory hierarchy, parallelism and synchronization. This talk focuses on the benefits and ease of programming vision-based kernels by using the key features of OpenCL C. In addition, Mirchandaney describes language extensions that allow programmers to take advantage of hardware features typical of embedded vision processors, such as wider vector widths, sophisticated accumulator forms of instructions, and scatter/gather capabilities. This talk also addresses advanced topics, such as whole function vectorization support available in the compiler and the benefits of hardware support for predication in the context of lane-based control flow and OpenCL C.
JIT Spraying Never Dies - Bypass CFG By Leveraging WARP Shader JIT Spraying.pdfSamiraKids
This document discusses bypassing Control Flow Guard (CFG) via Windows Advanced Rasterization Platform (WARP) shader Just-In-Time (JIT) spraying. It begins with background on Direct3D, WARP, shaders, and WebGL. It then explains the basic principle of CFG and known bypass methods. The presentation will demonstrate a new JIT spraying technique to bypass CFG by circumventing restrictions on the WARP JIT engine and reliably achieving CFG bypass. It concludes with a live demo of bypassing CFG on Internet Explorer 11 and Microsoft Edge on Windows 10.
Automatic License Plate Recognition using OpenCVEditor IJCATR
Automatic License Plate Recognition system is a real time embedded system which automatically recognizes the license plate of vehicles. There are many applications ranging from complex security systems to common areas and from parking admission to urban traffic control. Automatic license plate recognition (ALPR) has complex characteristics due to diverse effects such as of light and speed. Most of the ALPR systems are built using proprietary tools like Matlab. This paper presents an alternative method of implementing ALPR systems using Free Software including Python and the Open Computer Vision Library.
Automatic License Plate Recognition using OpenCV Editor IJCATR
Automatic License Plate Recognition system is a real time embedded system which automatically recognizes the license plate of vehicles. There are many applications ranging from complex security systems to common areas and from parking admission to urban traffic control. Automatic license plate recognition (ALPR) has complex characteristics due to diverse effects such as of light and speed. Most of the ALPR systems are built using proprietary tools like Matlab. This paper presents an alternative method of implementing ALPR systems using Free Software including Python and the Open Computer Vision Library.
For the full video of this presentation, please visit:
https://www.embedded-vision.com/platinum-members/intel/embedded-vision-training/videos/pages/may-2017-embedded-vision-summit-pisarevsky
For more information about embedded vision, please visit:
http://www.embedded-vision.com
Vadim Pisarevsky, Software Engineering Manager at Intel, presents the "Making OpenCV Code Run Fast" tutorial at the May 2017 Embedded Vision Summit.
OpenCV is the de facto standard framework for computer vision developers, with a 16+ year history, approximately one million lines of code, thousands of algorithms and tens of thousands of unit tests. While OpenCV delivers decent performance out-of-the-box for some classical algorithms on desktop PCs, it lacks sufficient performance when using some modern algorithms, such as deep neural networks, and when running on embedded platforms. Pisarevsky examines current and forthcoming approaches to performance optimization of OpenCV, including the existing OpenCL-based transparent API, newly added support for OpenVX, and early experimental results using Halide.
He demonstrates the use of the OpenCL-based transparent API on a popular CV problem: pedestrian detection. Because OpenCL does not provide good performance-portability, he explores additional approaches. He discusses how OpenVX support in OpenCV accelerates image processing pipelines and deep neural network execution. He also presents early experimental results using Halide, which provides a higher level of abstraction and ease of use, and is being actively considered for future support in OpenCV.
For the full video of this presentation, please visit:
http://www.embedded-vision.com/platinum-members/embedded-vision-alliance/embedded-vision-training/videos/pages/may-2015-embedded-vision-summit-opencv
For more information about embedded vision, please visit:
http://www.embedded-vision.com
Gary Bradski, President and CEO of the OpenCV Foundation, presents the "OpenCV Open Source Computer Vision Library: Latest Developments" tutorial at the May 2015 Embedded Vision Summit.
OpenCV is an enormously popular open source computer vision library, with over 9 million downloads. Originally used mainly for research and prototyping, in recent years OpenCV has increasingly been used in deployed products on a wide range of platforms from cloud to mobile.
The latest version, OpenCV 3.0 is currently in beta, and is a major overhaul, bringing OpenCV up to modern C++ standards and incorporating expanded support for 3D vision. The new release also introduces a modular “contrib” facility that enables independently developed modules to be quickly integrated with OpenCV as needed, providing a flexible mechanism to allow developers to experiment with new techniques before they are officially integrated into the library.
In this talk, Gary Bradski, head of the OpenCV Foundation, provides an insider’s perspective on the new version of OpenCV and how developers can utilize it to maximum advantage for vision research, prototyping, and product development.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2022/08/open-standards-powering-the-future-of-embedded-vision-a-presentation-from-the-khronos-group/
Neil Trevett, President of the Khronos Group and Vice President of Developer Ecosystems at NVIDIA, presents the “Open Standards: Powering the Future of Embedded Vision” tutorial at the May 2022 Embedded Vision Summit.
Open standards play an important role in enabling interoperability for efficient deployment of vision-based systems. In this session, Trevett shares an update on the family of Khronos Group standards for programming and deploying accelerated inferencing and embedded vision, including OpenCL, Vulkan Safety Critical, OpenVX, SYCL and NNEF.
Trevett discusses the evolving roadmap for these standards and provides insights to help you understand which standards are relevant to your projects. In addition, he introduces the new Khronos Embedded Camera API initiative. Trevett outlines the technical direction of the Embedded Camera API working group to create an open standard to streamline the integration and control of sophisticated embedded camera systems, and highlights how attendees can participate in this important industry initiative.
At the event was discussed what the developer can use to repair an application or a game if it has graphic display problems. Also, speakers gave an overview of the Mesa library and its development process.
This presentation by Vadym Shovkoplias and Andrew Khulap (Senior Software Engineers, Consultants, GlobalLogic), was delivered at GlobalLogic Kharkiv Embedded TechTalk #2 on June 4, 2018.
Video: https://youtu.be/pT1Y81KGHkM
The document discusses various graphics libraries used for 3D rendering. It describes PHIGS, the first standard for 3D graphics, and its features including a scene graph and centralized structure store. OpenGL is introduced as the most widely adopted library, providing a programming interface and graphics pipeline. Direct3D is presented as Microsoft's API for Windows, focused on gaming performance. Key differences between OpenGL and Direct3D are portability, functionality, and performance.
mloc.js 2014 - JavaScript and the browser as a platform for game developmentDavid Galeano
JavaScript and the browser can be a viable platform for game development, as demonstrated by games like Polycraft and a Quake 4 demo ported to JavaScript. However, to reach the level of native applications, improvements are needed in areas like memory usage, parallelism, and floating point performance. Specifically, typed objects could help memory usage, a task-based parallelism API could improve multi-core support, and SIMD and single-precision floats could enhance performance of common game operations like vectors and matrices.
Over the last few years the quality of Mesa's drivers has increased
exponentially, to the point where many prefer the use of the open source driver
to their proprietary counterparts. Open source drivers can have better
compatibility, less bugs, and more frequent updates to resolve issues. Because
of this uptick in quality, you may want to run the open source drivers on other
operating systems such as Android.
In this talk we will explore the work that was required to get Freedreno
running on Android. This will include setting up the development environment,
loading the driver on real hardware, development tips & tricks, running tests,
setup of debugging environment, issues encountered during the porting process,
and lastly we will explore some areas of Mesa that could be updated to simplify
porting to other operating systems. This talk should provide a guide for anyone
looking to get their Mesa driver running on Android.
(c) X.Org Developer's Conference (XDC) 2023
October 17-19, 2023
A Coruña (Spain)
https://indico.freedesktop.org/event/4/
OpenCL & the Future of Desktop High Performance Computing in CADDesign World
Modern desktop computers have more compute capabilities than ever before. Most of these systems include both a central processing unit (CPU) and a graphics processing unit (GPU), each consisting of multiple computing cores providing tremendous processing power. To date, harnessing the total processing power of a desktop workstation, fully utilizing both the CPU and GPU, has proven difficult for software developers. CPUs and GPUs have few similarities in both design and programming models. OpenCL is the tool that bridges the gap for software developers and enables them to fully tap into the power of both processors with a single software programming interface.
This presentation will examine the details of CPUs and GPUs, explore their differences and similarities, and highlight the computing power they can provide. We will also take a look OpenCL, what it is, what it does, and how this new computing interface will change the way software developers create software and help end users fully realize the compute power contained within today’s modern desktop computers.
Clojure: Programming self-optimizing webapps in LispStefan Richter
Bandit Algorithms in Clojure. Uploaded 2017, but it is actually a talk from 2013. Bandit Algorithms are reinforcement learning algorithms. They are really great for automating the A/B testing of important features. The talk shows how to package and call Clojure code in a way that it can be called from Java or other JVM languages, too.
This document provides an overview of distributed deep learning on Spark. It begins with a brief introduction to machine learning and deep learning. It then discusses why distributed systems are needed for deep learning due to the computational intensity. Spark is identified as a framework that can be used to build distributed deep learning systems. Two examples are described - SparkNet, which was developed at UC Berkeley, and CaffeOnSpark, developed at Yahoo. Both implement distributed stochastic gradient descent using a parameter server approach. The document concludes with demonstrations of Caffe and CaffeOnSpark.
Similar to Open Standards for ADAS: Andrew Richards, Codeplay, at AutoSens 2016 (20)
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIVladimir Iglovikov, Ph.D.
Presented by Vladimir Iglovikov:
- https://www.linkedin.com/in/iglovikov/
- https://x.com/viglovikov
- https://www.instagram.com/ternaus/
This presentation delves into the journey of Albumentations.ai, a highly successful open-source library for data augmentation.
Created out of a necessity for superior performance in Kaggle competitions, Albumentations has grown to become a widely used tool among data scientists and machine learning practitioners.
This case study covers various aspects, including:
People: The contributors and community that have supported Albumentations.
Metrics: The success indicators such as downloads, daily active users, GitHub stars, and financial contributions.
Challenges: The hurdles in monetizing open-source projects and measuring user engagement.
Development Practices: Best practices for creating, maintaining, and scaling open-source libraries, including code hygiene, CI/CD, and fast iteration.
Community Building: Strategies for making adoption easy, iterating quickly, and fostering a vibrant, engaged community.
Marketing: Both online and offline marketing tactics, focusing on real, impactful interactions and collaborations.
Mental Health: Maintaining balance and not feeling pressured by user demands.
Key insights include the importance of automation, making the adoption process seamless, and leveraging offline interactions for marketing. The presentation also emphasizes the need for continuous small improvements and building a friendly, inclusive community that contributes to the project's growth.
Vladimir Iglovikov brings his extensive experience as a Kaggle Grandmaster, ex-Staff ML Engineer at Lyft, sharing valuable lessons and practical advice for anyone looking to enhance the adoption of their open-source projects.
Explore more about Albumentations and join the community at:
GitHub: https://github.com/albumentations-team/albumentations
Website: https://albumentations.ai/
LinkedIn: https://www.linkedin.com/company/100504475
Twitter: https://x.com/albumentations
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.