Line Detection is computationally more intense than humans often would
expect. A graphics processing unit (GPU) can meet this need with substantial computational power, but the classic algorithmic approaches to line detection are often of a serial nature
and/or
utilize statistical sampling that cannot provide deterministic detection guarantuees.
Our talk presents a line detection algorithm that is able to detect lines of any angle, throughout the image. It is as parallel as the number of given image pixels multiplied by the
number of potential line angle bins. In contrast to the Hough transform, it is able to locate start and end of found line segments as well. Its redundant image accesses and bilinear
interpolations needed for
the multi-angle edge detection are managed by the texture cache, conserving DRAM memory bandwidth and computational complexity.
It is based on local edge detection filtering to fill small line angle candidates, followed by the inference of line primitives by a segmented scan, all happening in a data-parallel
fashion.
The output is a 2D array of line segments, providing the length of all line segments that originate from a given 2D position and a given line angle bin. This line segment map can then
be used to either infer higher-level vector symbols built from line primitives, again in a data-parallel fashion, using either GPU atomics or a data compaction algorithm in stream
fashion such as HistoPyramids. We exemplify this with the detection of parallel lines and quadriliterals.
While the algorithm's implementation benefits from atomics and shared memory, the basic algorithmic implementation is so simple that it can even be implemented on OpenGL ES 2.0 hardware
such as mobile phones.
Through a WebGL implementation, the line detection can even be applied to HTML5-based
camera input, providing a platform portable approach to low-level computer vision, and, in continuation, augmented reality and symbol detection on mobile phones.
https://www.geofront.eu/demos/lines
Line Detection in Computer Vision - Recent Developments and ApplicationsParth Nandedkar
This document summarizes recent developments in line detection techniques for computer vision. It discusses the goal of line detection and how it differs from edge detection. It then explains techniques like the successive approximation method, Hough transform, RANSAC, and how the Hough transform can be used for vanishing point detection. Applications like rectangle detection using these techniques are also covered. Key algorithms and their strengths/weaknesses are outlined for each method.
Ivan Khomyakov's portfolio summarizes his skills and experience. He has extensive knowledge of programming languages like C++, C#, Python, and technologies including OpenCV, SQL, machine learning, AWS, and Unity 3D. Some of his projects include developing a fast cubemap filter for rendering environments, a real-time locating system for tracking objects, and a dynamic map module for navigation systems. He also has experience with route editing tools, augmented reality applications, medical image segmentation, and machine learning algorithms. His background includes both academic and professional work on computer vision, image processing, statistics, and more.
Color Based Object Tracking with OpenCV A SurveyYogeshIJTSRD
Object tracking is a rapidly growing field in machine learning. Object tracking is exactly what name suggests, to keep tracking of an object. This method has all sorts of application in wide range of fields like military, household, traffic cameras, industries, etc. There are certain algorithms for the object tracking but the easiest one is color based object detection. This is a color based algorithm for object tracking supported very well in OpenCV library. OpenCV is an library popular among python developers, those who are interested in Computer vision. It is an open source library and hence anyone can use and modify it without any restrictions and licensing. The Color based method of object tracking is fully supported by OpenCVs vast varieties of functions. There is little bit of simple math and an excellent logic behind this method of object tracking. But in simple language the target object is identified from and image given explicitly by user or some area selected from frame of video, and algorithm continuously search for that object from each frame in video and highlights the best match for every frame. But like every algorithm it also has some pros and cons which are discussed here. Vatsal Bambhania | Harshad P Patel "Color Based Object Tracking with OpenCV - A Survey" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-5 | Issue-3 , April 2021, URL: https://www.ijtsrd.com/papers/ijtsrd39964.pdf Paper URL: https://www.ijtsrd.com/engineering/computer-engineering/39964/color-based-object-tracking-with-opencv--a-survey/vatsal-bambhania
Slide for study session given by Ryosuke Sasaki at Arithmer inc.
It is a summary of recent methods for object pose estimation in robotics using deep learning.
He entered Ph.D course at Univ. of Tokyo in April 2020.
Arithmer株式会社は東京大学大学院数理科学研究科発の数学の会社です。私達は現代数学を応用して、様々な分野のソリューションに、新しい高度AIシステムを導入しています。AIをいかに上手に使って仕事を効率化するか、そして人々の役に立つ結果を生み出すのか、それを考えるのが私たちの仕事です。
Arithmer began at the University of Tokyo Graduate School of Mathematical Sciences. Today, our research of modern mathematics and AI systems has the capability of providing solutions when dealing with tough complex issues. At Arithmer we believe it is our job to realize the functions of AI through improving work efficiency and producing more useful results for society.
Exact Cell Decomposition of Arrangements used for Path Planning in RoboticsUmair Amjad
This is short overview of research paper.
We present a practical algorithm for the automatic generation of a map that describes the operation environment of an indoor mobile service robot. The input is a CAD description of a building consisting of line segments that represent the walls. The algorithm is based on the exact cell decomposition obtained when these segments are extended to infinite lines, resulting in a line arrangement. The cells are represented by nodes in a connectivity graph. The map consists of the connectivity graph and additional environmental information that is calculated for each cell. The method takes into account both the path planning and position verification requirements of the robot and has been implemented.
This paper proposes a novel Adaptive Rood Pattern Search (ARPS) algorithm for block matching in video shot boundary detection. ARPS uses motion activity, which is measured by the magnitude of motion vectors between frames, to help predict the motion vector for each block. The algorithm works by first assuming blocks near a current block will move in a similar direction, then searching in a pattern around the predicted motion vector. Experimental results on test videos show ARPS can accurately detect shot boundaries with fewer false detections than other block matching algorithms.
The document describes how to detect lines in an image using the Hough transform. It explains that the Hough transform represents lines in a polar coordinate system and works by plotting the curves for each edge point and finding the intersections, which indicate collinear points that make up a line. It then outlines the steps to apply this technique: 1) load an image, 2) optionally convert to grayscale and blur, 3) perform edge detection using Canny, and 4) detect lines using Hough transform by finding intersections above a threshold.
Line Detection in Computer Vision - Recent Developments and ApplicationsParth Nandedkar
This document summarizes recent developments in line detection techniques for computer vision. It discusses the goal of line detection and how it differs from edge detection. It then explains techniques like the successive approximation method, Hough transform, RANSAC, and how the Hough transform can be used for vanishing point detection. Applications like rectangle detection using these techniques are also covered. Key algorithms and their strengths/weaknesses are outlined for each method.
Ivan Khomyakov's portfolio summarizes his skills and experience. He has extensive knowledge of programming languages like C++, C#, Python, and technologies including OpenCV, SQL, machine learning, AWS, and Unity 3D. Some of his projects include developing a fast cubemap filter for rendering environments, a real-time locating system for tracking objects, and a dynamic map module for navigation systems. He also has experience with route editing tools, augmented reality applications, medical image segmentation, and machine learning algorithms. His background includes both academic and professional work on computer vision, image processing, statistics, and more.
Color Based Object Tracking with OpenCV A SurveyYogeshIJTSRD
Object tracking is a rapidly growing field in machine learning. Object tracking is exactly what name suggests, to keep tracking of an object. This method has all sorts of application in wide range of fields like military, household, traffic cameras, industries, etc. There are certain algorithms for the object tracking but the easiest one is color based object detection. This is a color based algorithm for object tracking supported very well in OpenCV library. OpenCV is an library popular among python developers, those who are interested in Computer vision. It is an open source library and hence anyone can use and modify it without any restrictions and licensing. The Color based method of object tracking is fully supported by OpenCVs vast varieties of functions. There is little bit of simple math and an excellent logic behind this method of object tracking. But in simple language the target object is identified from and image given explicitly by user or some area selected from frame of video, and algorithm continuously search for that object from each frame in video and highlights the best match for every frame. But like every algorithm it also has some pros and cons which are discussed here. Vatsal Bambhania | Harshad P Patel "Color Based Object Tracking with OpenCV - A Survey" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-5 | Issue-3 , April 2021, URL: https://www.ijtsrd.com/papers/ijtsrd39964.pdf Paper URL: https://www.ijtsrd.com/engineering/computer-engineering/39964/color-based-object-tracking-with-opencv--a-survey/vatsal-bambhania
Slide for study session given by Ryosuke Sasaki at Arithmer inc.
It is a summary of recent methods for object pose estimation in robotics using deep learning.
He entered Ph.D course at Univ. of Tokyo in April 2020.
Arithmer株式会社は東京大学大学院数理科学研究科発の数学の会社です。私達は現代数学を応用して、様々な分野のソリューションに、新しい高度AIシステムを導入しています。AIをいかに上手に使って仕事を効率化するか、そして人々の役に立つ結果を生み出すのか、それを考えるのが私たちの仕事です。
Arithmer began at the University of Tokyo Graduate School of Mathematical Sciences. Today, our research of modern mathematics and AI systems has the capability of providing solutions when dealing with tough complex issues. At Arithmer we believe it is our job to realize the functions of AI through improving work efficiency and producing more useful results for society.
Exact Cell Decomposition of Arrangements used for Path Planning in RoboticsUmair Amjad
This is short overview of research paper.
We present a practical algorithm for the automatic generation of a map that describes the operation environment of an indoor mobile service robot. The input is a CAD description of a building consisting of line segments that represent the walls. The algorithm is based on the exact cell decomposition obtained when these segments are extended to infinite lines, resulting in a line arrangement. The cells are represented by nodes in a connectivity graph. The map consists of the connectivity graph and additional environmental information that is calculated for each cell. The method takes into account both the path planning and position verification requirements of the robot and has been implemented.
This paper proposes a novel Adaptive Rood Pattern Search (ARPS) algorithm for block matching in video shot boundary detection. ARPS uses motion activity, which is measured by the magnitude of motion vectors between frames, to help predict the motion vector for each block. The algorithm works by first assuming blocks near a current block will move in a similar direction, then searching in a pattern around the predicted motion vector. Experimental results on test videos show ARPS can accurately detect shot boundaries with fewer false detections than other block matching algorithms.
The document describes how to detect lines in an image using the Hough transform. It explains that the Hough transform represents lines in a polar coordinate system and works by plotting the curves for each edge point and finding the intersections, which indicate collinear points that make up a line. It then outlines the steps to apply this technique: 1) load an image, 2) optionally convert to grayscale and blur, 3) perform edge detection using Canny, and 4) detect lines using Hough transform by finding intersections above a threshold.
This document describes a lane detection and obstacle avoidance system developed using Matlab. A single 180 degree fish eye camera and LIDAR sensor are used. Lane detection is implemented using Hough line and Hough transform to detect lane markers. Obstacle avoidance is done using a SICK LIDAR sensor to detect objects within a buffer zone. The system displays offset distance values from the center of the lane to determine if the vehicle stays within its lane.
Machine vision based pedestrian detection and lane departureSanket Borhade
This document describes a system comprising a Pedestrian Detection System (PDS) and Lane Detection and Warning System (LDWS) for medium-class cars. It was created by group members Sanket R. Borhade, Manthan N. Shah, and Pravin D. Jadhav. The system uses cameras to detect lanes and pedestrians, with the goal of reducing traffic accidents. It applies techniques like Hough transforms and image segmentation for lane detection and a two-step framework for pedestrian detection. The results are then indicated visually or audibly to the driver.
The document discusses edge detection methods including gradient based approaches like Sobel and zero crossing based techniques like Laplacian of Gaussian. It proposes a new algorithm that applies fuzzy logic to the results of gradient and zero crossing edge detection on an image to more accurately identify edges. The algorithm calculates gradient and zero crossings, applies fuzzy rules to classify pixels, and thresholds to determine final edge pixels.
This document provides an introduction to image segmentation. It discusses how image segmentation partitions an image into meaningful regions based on measurements like greyscale, color, texture, depth, or motion. Segmentation is often an initial step in image understanding and has applications in identifying objects, guiding robots, and video compression. The document describes thresholding and clustering as two common segmentation techniques and provides examples of segmentation based on greyscale, texture, motion, depth, and optical flow. It also discusses region-growing, edge-based, and active contour model approaches to segmentation.
This document discusses line detection in images. It introduces line detection and the problem of filtering lines from other image elements. It then describes several common methods for line detection, including Sobel operators, Laplacian operators, and Laplacian of Gaussian. It discusses using these methods to detect lines and the potential applications of line detection technology.
This document summarizes 10 important AI research papers. It begins with a brief introduction on artificial intelligence and what the papers aim to provide information on. It then lists the 10 papers with their titles:
1. A Computational Approach to Edge Detection
2. A Proposal for the Dartmouth Summer Research Project on Artificial Intelligence
3. A Threshold Selection Method from Gray-Level Histograms
4. Deep Residual Learning for Image Recognition
5. Distinctive Image Features from Scale-Invariant Keypoints
6. Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
7. Large-scale Video Classification with Convolutional Neural Networks
8. Probabilistic Reason
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
This document summarizes a research paper that proposes a distributed Canny edge detection algorithm with the following key points:
1. The algorithm divides an input image into overlapping blocks that can be processed independently and in parallel to reduce memory requirements, latency, and increase throughput compared to the original Canny algorithm.
2. A novel method is proposed for calculating hysteresis thresholds based on an 8-bin non-uniform quantized gradient magnitude histogram to reduce computational complexity compared to previous methods.
3. An FPGA architecture is presented for implementing the proposed distributed Canny algorithm, along with simulation results demonstrating it can process an image 16 times faster than the original Canny algorithm with no loss in performance.
Scratch to Supercomputers: Bottoms-up Build of Large-scale Computational Lens...inside-BigData.com
In this deck from the 2018 Swiss HPC Conference, Gilles Fourestey from EPFL presents: Scratch to Supercomputers: Bottoms-up Build of Large-scale Computational Lensing Software.
"LENSTOOL is a gravitational lensing software that models mass distribution of galaxies and clusters. It was developed by Prof. Kneib, head of the LASTRO lab at EPFL, et al., starting from 1996. It is used to obtain sub-percent precision measurements of the total mass in galaxy clusters and constrain the dark matter self-interaction cross-section, a crucial ingredient to understanding its nature.
However, LENSTOOL lacks efficient vectorization and only uses OpenMP, which limits its execution to one node and can lead to execution times that exceed several months. Therefore, the LASTRO and the EPFL HPC group decided to rewrite the code from scratch and in order to minimize risk and maximize performance, a bottom-up approach that focuses on exposing parallelism at hardware and instruction levels was used. The result is a high performance code, fully vectorized on Xeon, Xeon Phis and GPUs that currently scales up to hundreds of nodes on CSCS’ Piz Daint, one of the fastest supercomputers in the world."
Watch the video: https://wp.me/p3RLHQ-ili
Learn more: https://infoscience.epfl.ch/record/234382/files/EPFL_TH8338.pdf?subformat=pdfa
and
http://www.hpcadvisorycouncil.com/events/2018/swiss-workshop/agenda.php
Sign up for our insideHPC Newsletter: http://insidehpc.com/newsletter
This document summarizes the key points of a research paper on regularized graph convolutional neural networks (RGCNN) for point cloud segmentation. Specifically:
1) RGCNN directly processes raw point clouds without voxelization or other preprocessing. It constructs graphs based on point coordinates and normals, performs graph convolutions to learn features, and adaptively updates the graphs during learning.
2) RGCNN leverages spectral graph theory to treat point cloud features as graph signals, defines convolutions via Chebyshev polynomial approximation, and regularizes learning with a graph-signal smoothness prior.
3) Experiments on ShapeNet show RGCNN achieves competitive segmentation performance with lower complexity than state-of-the
74 real time-image-processing-applied-to-traffic-queue-dravi247272
- The document presents a queue detection algorithm for real-time image processing applied to traffic surveillance.
- It aims to accurately measure traffic queue parameters under varying real-world conditions. The algorithm has two main operations: vehicle detection and motion detection.
- Motion detection is based on applying a differencing technique to profiles extracted from consecutive image frames along the road. Vehicle detection uses edge detection on these profiles. When motion is detected, vehicle detection is applied to measure queue parameters.
Visual Product Identification for BlindIJERA Editor
This project is developed to make the life of blind people easy. This is a camera based system to scan the
barcode behind the image and read the description of the product with the help of Id stored in the barcode. This
is very beneficial in case of finding out the description of packaged goods to the blind people and thus helping
them in deciding to purchase a product or not especially which are packaged. This is because it becomes very
difficult for the blind people to distinguish between the packaged goods. In order to use this system, all the user
needs to do is capture the image on the product in the mobile phone which then resolves the barcode which
means it scans the image to find out the Id stored. Thus this application really benefits blind and visually
impaired people and thus making their work of identifying products easy. This is very easy to use and affordable
as it requires a scanner to scan the barcode and a camera phone to take the picture of the image containing the
barcode. This is now easy to implement as most of the mobile phones today have the required resolution in order
to scan the barcode to identify the Id stored in it and read out the product description. This project can be
implemented in any shopping mall, supermarket, Book stores, Medical stores etc.
This document provides a user guide for FracPaQ version 2.0, an open source MATLAB toolbox for quantifying fracture patterns in rock. The toolbox allows users to input either image files or text files of fracture trace coordinates. It then generates maps, graphs and statistics to characterize the fracture pattern, including lengths, orientations, intensity, density and permeability. The guide describes how to obtain, install and use the latest version of FracPaQ, and provides details on preparing fracture trace data, selecting outputs, and interpreting the results.
The document discusses statistical models for networks. It covers types of inference problems in networks, simple random graphs models, and less random graph models that condition on additional network features like degree distribution or mixing patterns. It also discusses comparing two networks using quadratic assignment procedures and generating networks with appropriate degree distributions for comparison.
Learning Graph Representation for Data-Efficiency RLlauratoni4
This document provides information about Laura Toni's presentation on learning graph representation for data-efficient reinforcement learning. It discusses Laura Toni's affiliation with the LASP Research group at University College London, which focuses on machine learning, signal processing, and developing strategies for large-scale networks exploiting graph structures. The key goal is to exploit graph structure to develop efficient learning algorithms. The document lists some applications such as virtual reality systems, bandit problems, structural reinforcement learning, and influence maximization.
Statistical models for networks aim to compare observed networks to random graphs in order to assess statistical significance. Simple random graphs are commonly used as a baseline null model but are unrealistic. More developed null models condition on key network structures like degree distribution or mixing patterns to generate more reasonable random graphs for comparison. Network inference problems evaluate whether an observed network exhibits random or non-random properties relative to an appropriate null model.
Hardware Unit for Edge Detection with Comparative Analysis of Different Edge ...paperpublications3
Abstract: An edge in an image is a contour across which the brightness of the image changes abruptly. In image processing, an edge is often interpreted as one class of singularities. Edge detection is an important task in image processing. It is a main tool in pattern recognition, image segmentation, and scene analysis. An edge detector is basically a high pass filter that can be applied to extract the edge points in an image. This topic has attracted many researchers and many achievements have been made. Many researchers provided different approaches based on mathematical calculations which some of them are either robust or cost effective. A new algorithm will be proposed to detect the edges of image with increased robustness and throughput. Using this algorithm we will reduce the time complexity problem which is faced by previous algorithm. We will also propose hardware unit for proposed algorithm which will reduce the area, power and speed problem. We will compare our proposed algorithm with previous approach. For image quality measurement we will use some scientific parameters those are PSNR, SSIM, FSIM. Implementation of proposed algorithm will be done by Matlab and hardware implementation will be done by using of Verilog on Xilinx 14.1 simulator. Verification will be done on Model sim.
Real time-image-processing-applied-to-traffic-queue-detection-algorithmajayrampelli
This document describes a real-time image processing algorithm for detecting traffic queues. The algorithm uses two operations: motion detection and vehicle detection. Motion detection involves differencing consecutive image frames and comparing the difference to a threshold. Vehicle detection applies edge detection techniques to image profiles. The algorithm aims to measure queue parameters like length, occurrence period, and slope in real-time using low-cost systems. It processes image sub-profiles to reduce computation time. Experimental results found the algorithm could measure queue length with 95% accuracy.
What to measure:
Proprioceptive sensors
measure values internally to the system (robot),
e.g. motor speed, wheel load, heading of the robot, battery status
Exteroceptive sensors
information from the robots environment
distances to objects, intensity of the ambient light, unique features.
How to measure:
Passive sensors
energy coming for the environment
Active sensors
emit their proper energy and measure the reaction
better performance, but some influence on environment
This document describes a lane detection and obstacle avoidance system developed using Matlab. A single 180 degree fish eye camera and LIDAR sensor are used. Lane detection is implemented using Hough line and Hough transform to detect lane markers. Obstacle avoidance is done using a SICK LIDAR sensor to detect objects within a buffer zone. The system displays offset distance values from the center of the lane to determine if the vehicle stays within its lane.
Machine vision based pedestrian detection and lane departureSanket Borhade
This document describes a system comprising a Pedestrian Detection System (PDS) and Lane Detection and Warning System (LDWS) for medium-class cars. It was created by group members Sanket R. Borhade, Manthan N. Shah, and Pravin D. Jadhav. The system uses cameras to detect lanes and pedestrians, with the goal of reducing traffic accidents. It applies techniques like Hough transforms and image segmentation for lane detection and a two-step framework for pedestrian detection. The results are then indicated visually or audibly to the driver.
The document discusses edge detection methods including gradient based approaches like Sobel and zero crossing based techniques like Laplacian of Gaussian. It proposes a new algorithm that applies fuzzy logic to the results of gradient and zero crossing edge detection on an image to more accurately identify edges. The algorithm calculates gradient and zero crossings, applies fuzzy rules to classify pixels, and thresholds to determine final edge pixels.
This document provides an introduction to image segmentation. It discusses how image segmentation partitions an image into meaningful regions based on measurements like greyscale, color, texture, depth, or motion. Segmentation is often an initial step in image understanding and has applications in identifying objects, guiding robots, and video compression. The document describes thresholding and clustering as two common segmentation techniques and provides examples of segmentation based on greyscale, texture, motion, depth, and optical flow. It also discusses region-growing, edge-based, and active contour model approaches to segmentation.
This document discusses line detection in images. It introduces line detection and the problem of filtering lines from other image elements. It then describes several common methods for line detection, including Sobel operators, Laplacian operators, and Laplacian of Gaussian. It discusses using these methods to detect lines and the potential applications of line detection technology.
This document summarizes 10 important AI research papers. It begins with a brief introduction on artificial intelligence and what the papers aim to provide information on. It then lists the 10 papers with their titles:
1. A Computational Approach to Edge Detection
2. A Proposal for the Dartmouth Summer Research Project on Artificial Intelligence
3. A Threshold Selection Method from Gray-Level Histograms
4. Deep Residual Learning for Image Recognition
5. Distinctive Image Features from Scale-Invariant Keypoints
6. Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
7. Large-scale Video Classification with Convolutional Neural Networks
8. Probabilistic Reason
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
This document summarizes a research paper that proposes a distributed Canny edge detection algorithm with the following key points:
1. The algorithm divides an input image into overlapping blocks that can be processed independently and in parallel to reduce memory requirements, latency, and increase throughput compared to the original Canny algorithm.
2. A novel method is proposed for calculating hysteresis thresholds based on an 8-bin non-uniform quantized gradient magnitude histogram to reduce computational complexity compared to previous methods.
3. An FPGA architecture is presented for implementing the proposed distributed Canny algorithm, along with simulation results demonstrating it can process an image 16 times faster than the original Canny algorithm with no loss in performance.
Scratch to Supercomputers: Bottoms-up Build of Large-scale Computational Lens...inside-BigData.com
In this deck from the 2018 Swiss HPC Conference, Gilles Fourestey from EPFL presents: Scratch to Supercomputers: Bottoms-up Build of Large-scale Computational Lensing Software.
"LENSTOOL is a gravitational lensing software that models mass distribution of galaxies and clusters. It was developed by Prof. Kneib, head of the LASTRO lab at EPFL, et al., starting from 1996. It is used to obtain sub-percent precision measurements of the total mass in galaxy clusters and constrain the dark matter self-interaction cross-section, a crucial ingredient to understanding its nature.
However, LENSTOOL lacks efficient vectorization and only uses OpenMP, which limits its execution to one node and can lead to execution times that exceed several months. Therefore, the LASTRO and the EPFL HPC group decided to rewrite the code from scratch and in order to minimize risk and maximize performance, a bottom-up approach that focuses on exposing parallelism at hardware and instruction levels was used. The result is a high performance code, fully vectorized on Xeon, Xeon Phis and GPUs that currently scales up to hundreds of nodes on CSCS’ Piz Daint, one of the fastest supercomputers in the world."
Watch the video: https://wp.me/p3RLHQ-ili
Learn more: https://infoscience.epfl.ch/record/234382/files/EPFL_TH8338.pdf?subformat=pdfa
and
http://www.hpcadvisorycouncil.com/events/2018/swiss-workshop/agenda.php
Sign up for our insideHPC Newsletter: http://insidehpc.com/newsletter
This document summarizes the key points of a research paper on regularized graph convolutional neural networks (RGCNN) for point cloud segmentation. Specifically:
1) RGCNN directly processes raw point clouds without voxelization or other preprocessing. It constructs graphs based on point coordinates and normals, performs graph convolutions to learn features, and adaptively updates the graphs during learning.
2) RGCNN leverages spectral graph theory to treat point cloud features as graph signals, defines convolutions via Chebyshev polynomial approximation, and regularizes learning with a graph-signal smoothness prior.
3) Experiments on ShapeNet show RGCNN achieves competitive segmentation performance with lower complexity than state-of-the
74 real time-image-processing-applied-to-traffic-queue-dravi247272
- The document presents a queue detection algorithm for real-time image processing applied to traffic surveillance.
- It aims to accurately measure traffic queue parameters under varying real-world conditions. The algorithm has two main operations: vehicle detection and motion detection.
- Motion detection is based on applying a differencing technique to profiles extracted from consecutive image frames along the road. Vehicle detection uses edge detection on these profiles. When motion is detected, vehicle detection is applied to measure queue parameters.
Visual Product Identification for BlindIJERA Editor
This project is developed to make the life of blind people easy. This is a camera based system to scan the
barcode behind the image and read the description of the product with the help of Id stored in the barcode. This
is very beneficial in case of finding out the description of packaged goods to the blind people and thus helping
them in deciding to purchase a product or not especially which are packaged. This is because it becomes very
difficult for the blind people to distinguish between the packaged goods. In order to use this system, all the user
needs to do is capture the image on the product in the mobile phone which then resolves the barcode which
means it scans the image to find out the Id stored. Thus this application really benefits blind and visually
impaired people and thus making their work of identifying products easy. This is very easy to use and affordable
as it requires a scanner to scan the barcode and a camera phone to take the picture of the image containing the
barcode. This is now easy to implement as most of the mobile phones today have the required resolution in order
to scan the barcode to identify the Id stored in it and read out the product description. This project can be
implemented in any shopping mall, supermarket, Book stores, Medical stores etc.
This document provides a user guide for FracPaQ version 2.0, an open source MATLAB toolbox for quantifying fracture patterns in rock. The toolbox allows users to input either image files or text files of fracture trace coordinates. It then generates maps, graphs and statistics to characterize the fracture pattern, including lengths, orientations, intensity, density and permeability. The guide describes how to obtain, install and use the latest version of FracPaQ, and provides details on preparing fracture trace data, selecting outputs, and interpreting the results.
The document discusses statistical models for networks. It covers types of inference problems in networks, simple random graphs models, and less random graph models that condition on additional network features like degree distribution or mixing patterns. It also discusses comparing two networks using quadratic assignment procedures and generating networks with appropriate degree distributions for comparison.
Learning Graph Representation for Data-Efficiency RLlauratoni4
This document provides information about Laura Toni's presentation on learning graph representation for data-efficient reinforcement learning. It discusses Laura Toni's affiliation with the LASP Research group at University College London, which focuses on machine learning, signal processing, and developing strategies for large-scale networks exploiting graph structures. The key goal is to exploit graph structure to develop efficient learning algorithms. The document lists some applications such as virtual reality systems, bandit problems, structural reinforcement learning, and influence maximization.
Statistical models for networks aim to compare observed networks to random graphs in order to assess statistical significance. Simple random graphs are commonly used as a baseline null model but are unrealistic. More developed null models condition on key network structures like degree distribution or mixing patterns to generate more reasonable random graphs for comparison. Network inference problems evaluate whether an observed network exhibits random or non-random properties relative to an appropriate null model.
Hardware Unit for Edge Detection with Comparative Analysis of Different Edge ...paperpublications3
Abstract: An edge in an image is a contour across which the brightness of the image changes abruptly. In image processing, an edge is often interpreted as one class of singularities. Edge detection is an important task in image processing. It is a main tool in pattern recognition, image segmentation, and scene analysis. An edge detector is basically a high pass filter that can be applied to extract the edge points in an image. This topic has attracted many researchers and many achievements have been made. Many researchers provided different approaches based on mathematical calculations which some of them are either robust or cost effective. A new algorithm will be proposed to detect the edges of image with increased robustness and throughput. Using this algorithm we will reduce the time complexity problem which is faced by previous algorithm. We will also propose hardware unit for proposed algorithm which will reduce the area, power and speed problem. We will compare our proposed algorithm with previous approach. For image quality measurement we will use some scientific parameters those are PSNR, SSIM, FSIM. Implementation of proposed algorithm will be done by Matlab and hardware implementation will be done by using of Verilog on Xilinx 14.1 simulator. Verification will be done on Model sim.
Real time-image-processing-applied-to-traffic-queue-detection-algorithmajayrampelli
This document describes a real-time image processing algorithm for detecting traffic queues. The algorithm uses two operations: motion detection and vehicle detection. Motion detection involves differencing consecutive image frames and comparing the difference to a threshold. Vehicle detection applies edge detection techniques to image profiles. The algorithm aims to measure queue parameters like length, occurrence period, and slope in real-time using low-cost systems. It processes image sub-profiles to reduce computation time. Experimental results found the algorithm could measure queue length with 95% accuracy.
What to measure:
Proprioceptive sensors
measure values internally to the system (robot),
e.g. motor speed, wheel load, heading of the robot, battery status
Exteroceptive sensors
information from the robots environment
distances to objects, intensity of the ambient light, unique features.
How to measure:
Passive sensors
energy coming for the environment
Active sensors
emit their proper energy and measure the reaction
better performance, but some influence on environment
The document provides an overview of deep learning based object detection models. It discusses early approaches like R-CNN, Fast R-CNN, and Faster R-CNN, as well as more recent single-shot detectors like YOLO, SSD, RetinaNet, and CenterNet. It covers performance metrics like mean average precision (mAP) and compares the speed and accuracy of different models. The document concludes by outlining general guidelines for choosing an object detection model based on priorities like accuracy, speed, model size, and portability.
Introduction to cosmology and numerical cosmology (with the Cactus code) (2/2)SEENET-MTP
This document discusses using the Cactus code to model cosmological simulations numerically. It introduces the Cosmo and RealSF thorns developed to solve Einstein's equations for cosmological models within the Cactus framework. The Cosmo thorn provides initial data and boundary conditions for the Friedmann-Robertson-Walker metric. The RealSF thorn evolves a scalar field by solving the Klein-Gordon equation. Examples are presented of simulations using these thorns to model pure FRW cosmologies and those with a cosmological constant or scalar field.
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKINGIRJET Journal
This document presents a project report on removing unnecessary objects from photos using masking techniques. It discusses using algorithms like Fast Marching and Navier-Stokes to fill in missing image data and maintain continuity across boundaries. The Fast Marching method begins at region boundaries and works inward, prioritizing completion of boundary pixels first. Navier-Stokes uses fluid dynamics equations to continue intensity value functions and ensure they remain continuous at boundaries. Color filtering can also be used to segment specific colored objects or regions. The project aims to implement these techniques to remove unwanted objects from images and fill the resulting gaps seamlessly.
Standard A-A' topographic profiles are widely used in the geosciences to construct cross sections and investigate surficial processes. However, simple line profiles fail to capture the wider topographic regime. Here, I present a workflow to calculate a swath profile in GRASS GIS. The basic premise is, a swath profile "looks off to the side" along each step in a standard profile line, and calculates min/mean/max elevation, hence producing a statistically-relevant 2-d approximation of topography.
You can find more gis-based geomorphology workflows at my website: https://sites.google.com/site/sorsbysj/
- Skyler Sorsby
Random graphs and graph randomization procedures can be used for inference, simulation, and measuring networks. [1] Erdos random graphs are the simplest random graphs where each edge has an equal probability of being present. [2] More complex random graph models can be generated that preserve properties like degree distributions or mixing patterns observed in real networks. [3] Analyzing the distribution of triadic subgraphs (motifs) in a network compared to random graphs can test hypothesized mechanisms of network formation.
ESPP presentation to EU Waste Water Network, 4th June 2024 “EU policies driving nutrient removal and recycling
and the revised UWWTD (Urban Waste Water Treatment Directive)”
When I was asked to give a companion lecture in support of ‘The Philosophy of Science’ (https://shorturl.at/4pUXz) I decided not to walk through the detail of the many methodologies in order of use. Instead, I chose to employ a long standing, and ongoing, scientific development as an exemplar. And so, I chose the ever evolving story of Thermodynamics as a scientific investigation at its best.
Conducted over a period of >200 years, Thermodynamics R&D, and application, benefitted from the highest levels of professionalism, collaboration, and technical thoroughness. New layers of application, methodology, and practice were made possible by the progressive advance of technology. In turn, this has seen measurement and modelling accuracy continually improved at a micro and macro level.
Perhaps most importantly, Thermodynamics rapidly became a primary tool in the advance of applied science/engineering/technology, spanning micro-tech, to aerospace and cosmology. I can think of no better a story to illustrate the breadth of scientific methodologies and applications at their best.
The technology uses reclaimed CO₂ as the dyeing medium in a closed loop process. When pressurized, CO₂ becomes supercritical (SC-CO₂). In this state CO₂ has a very high solvent power, allowing the dye to dissolve easily.
Phenomics assisted breeding in crop improvementIshaGoswami9
As the population is increasing and will reach about 9 billion upto 2050. Also due to climate change, it is difficult to meet the food requirement of such a large population. Facing the challenges presented by resource shortages, climate
change, and increasing global population, crop yield and quality need to be improved in a sustainable way over the coming decades. Genetic improvement by breeding is the best way to increase crop productivity. With the rapid progression of functional
genomics, an increasing number of crop genomes have been sequenced and dozens of genes influencing key agronomic traits have been identified. However, current genome sequence information has not been adequately exploited for understanding
the complex characteristics of multiple gene, owing to a lack of crop phenotypic data. Efficient, automatic, and accurate technologies and platforms that can capture phenotypic data that can
be linked to genomics information for crop improvement at all growth stages have become as important as genotyping. Thus,
high-throughput phenotyping has become the major bottleneck restricting crop breeding. Plant phenomics has been defined as the high-throughput, accurate acquisition and analysis of multi-dimensional phenotypes
during crop growing stages at the organism level, including the cell, tissue, organ, individual plant, plot, and field levels. With the rapid development of novel sensors, imaging technology,
and analysis methods, numerous infrastructure platforms have been developed for phenotyping.
Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...University of Maribor
Slides from talk:
Aleš Zamuda: Remote Sensing and Computational, Evolutionary, Supercomputing, and Intelligent Systems.
11th International Conference on Electrical, Electronics and Computer Engineering (IcETRAN), Niš, 3-6 June 2024
Inter-Society Networking Panel GRSS/MTT-S/CIS Panel Session: Promoting Connection and Cooperation
https://www.etran.rs/2024/en/home-english/
The ability to recreate computational results with minimal effort and actionable metrics provides a solid foundation for scientific research and software development. When people can replicate an analysis at the touch of a button using open-source software, open data, and methods to assess and compare proposals, it significantly eases verification of results, engagement with a diverse range of contributors, and progress. However, we have yet to fully achieve this; there are still many sociotechnical frictions.
Inspired by David Donoho's vision, this talk aims to revisit the three crucial pillars of frictionless reproducibility (data sharing, code sharing, and competitive challenges) with the perspective of deep software variability.
Our observation is that multiple layers — hardware, operating systems, third-party libraries, software versions, input data, compile-time options, and parameters — are subject to variability that exacerbates frictions but is also essential for achieving robust, generalizable results and fostering innovation. I will first review the literature, providing evidence of how the complex variability interactions across these layers affect qualitative and quantitative software properties, thereby complicating the reproduction and replication of scientific studies in various fields.
I will then present some software engineering and AI techniques that can support the strategic exploration of variability spaces. These include the use of abstractions and models (e.g., feature models), sampling strategies (e.g., uniform, random), cost-effective measurements (e.g., incremental build of software configurations), and dimensionality reduction methods (e.g., transfer learning, feature selection, software debloating).
I will finally argue that deep variability is both the problem and solution of frictionless reproducibility, calling the software science community to develop new methods and tools to manage variability and foster reproducibility in software systems.
Exposé invité Journées Nationales du GDR GPL 2024
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...AbdullaAlAsif1
The pygmy halfbeak Dermogenys colletei, is known for its viviparous nature, this presents an intriguing case of relatively low fecundity, raising questions about potential compensatory reproductive strategies employed by this species. Our study delves into the examination of fecundity and the Gonadosomatic Index (GSI) in the Pygmy Halfbeak, D. colletei (Meisner, 2001), an intriguing viviparous fish indigenous to Sarawak, Borneo. We hypothesize that the Pygmy halfbeak, D. colletei, may exhibit unique reproductive adaptations to offset its low fecundity, thus enhancing its survival and fitness. To address this, we conducted a comprehensive study utilizing 28 mature female specimens of D. colletei, carefully measuring fecundity and GSI to shed light on the reproductive adaptations of this species. Our findings reveal that D. colletei indeed exhibits low fecundity, with a mean of 16.76 ± 2.01, and a mean GSI of 12.83 ± 1.27, providing crucial insights into the reproductive mechanisms at play in this species. These results underscore the existence of unique reproductive strategies in D. colletei, enabling its adaptation and persistence in Borneo's diverse aquatic ecosystems, and call for further ecological research to elucidate these mechanisms. This study lends to a better understanding of viviparous fish in Borneo and contributes to the broader field of aquatic ecology, enhancing our knowledge of species adaptations to unique ecological challenges.
Describing and Interpreting an Immersive Learning Case with the Immersion Cub...Leonel Morgado
Current descriptions of immersive learning cases are often difficult or impossible to compare. This is due to a myriad of different options on what details to include, which aspects are relevant, and on the descriptive approaches employed. Also, these aspects often combine very specific details with more general guidelines or indicate intents and rationales without clarifying their implementation. In this paper we provide a method to describe immersive learning cases that is structured to enable comparisons, yet flexible enough to allow researchers and practitioners to decide which aspects to include. This method leverages a taxonomy that classifies educational aspects at three levels (uses, practices, and strategies) and then utilizes two frameworks, the Immersive Learning Brain and the Immersion Cube, to enable a structured description and interpretation of immersive learning cases. The method is then demonstrated on a published immersive learning case on training for wind turbine maintenance using virtual reality. Applying the method results in a structured artifact, the Immersive Learning Case Sheet, that tags the case with its proximal uses, practices, and strategies, and refines the free text case description to ensure that matching details are included. This contribution is thus a case description method in support of future comparative research of immersive learning cases. We then discuss how the resulting description and interpretation can be leveraged to change immersion learning cases, by enriching them (considering low-effort changes or additions) or innovating (exploring more challenging avenues of transformation). The method holds significant promise to support better-grounded research in immersive learning.
The binding of cosmological structures by massless topological defectsSérgio Sacani
Assuming spherical symmetry and weak field, it is shown that if one solves the Poisson equation or the Einstein field
equations sourced by a topological defect, i.e. a singularity of a very specific form, the result is a localized gravitational
field capable of driving flat rotation (i.e. Keplerian circular orbits at a constant speed for all radii) of test masses on a thin
spherical shell without any underlying mass. Moreover, a large-scale structure which exploits this solution by assembling
concentrically a number of such topological defects can establish a flat stellar or galactic rotation curve, and can also deflect
light in the same manner as an equipotential (isothermal) sphere. Thus, the need for dark matter or modified gravity theory is
mitigated, at least in part.
The debris of the ‘last major merger’ is dynamically youngSérgio Sacani
The Milky Way’s (MW) inner stellar halo contains an [Fe/H]-rich component with highly eccentric orbits, often referred to as the
‘last major merger.’ Hypotheses for the origin of this component include Gaia-Sausage/Enceladus (GSE), where the progenitor
collided with the MW proto-disc 8–11 Gyr ago, and the Virgo Radial Merger (VRM), where the progenitor collided with the
MW disc within the last 3 Gyr. These two scenarios make different predictions about observable structure in local phase space,
because the morphology of debris depends on how long it has had to phase mix. The recently identified phase-space folds in Gaia
DR3 have positive caustic velocities, making them fundamentally different than the phase-mixed chevrons found in simulations
at late times. Roughly 20 per cent of the stars in the prograde local stellar halo are associated with the observed caustics. Based
on a simple phase-mixing model, the observed number of caustics are consistent with a merger that occurred 1–2 Gyr ago.
We also compare the observed phase-space distribution to FIRE-2 Latte simulations of GSE-like mergers, using a quantitative
measurement of phase mixing (2D causticality). The observed local phase-space distribution best matches the simulated data
1–2 Gyr after collision, and certainly not later than 3 Gyr. This is further evidence that the progenitor of the ‘last major merger’
did not collide with the MW proto-disc at early times, as is thought for the GSE, but instead collided with the MW disc within
the last few Gyr, consistent with the body of work surrounding the VRM.
2. May 2016
2 of 38
FastLineSegmentDetection
Business Background
Algorithmic consulting and training
in general purpose GPU computing.
Main focus on computer vision and
visual computing, e.g. GPU-based
camera calibration or lightfield
acquisition/rendering.
Spatial computing in HPC as well,
e.g. volume compression or
tomography reconstruction.
geofront e.U., privately owned, was founded in January 2016.
3. June 2016
3 of 38
FastLineSegmentDetection
Open Investigations: Purpose
Create new algorithms and technologies
as part of geofront's algorithmic portfolio.
Real-time game graphics techniques
(on GPU, e.g. shadow mapping, Z buffer, data parallelism)
Computer vision knowledge on multi-view acq. vision
(Image Based Reconstruction and Rendering)
Client-Server and Mobile Rendering / Vision
(WebGL, Android, but also Tegra X1)
4. May 2016
4 of 38
FastLineSegmentDetection
Line Detection in WebGL
https://www.geofront.eu/demos/lines
Line segments derived from
local edge filter results (line angle bins)
Data-parallel Segmented Scan
„connects“ local edges
2D line segment maps, one per line angle bin
Interactive run times on mobile GPUs
Novel for WebGL, through
Data Compaction algoritm which produces lists
of line segments above certain length
5. May 2016
5 of 38
FastLineSegmentDetection
Task Setting
Reliable Real-time Line Detection in images and video
(a basic component for medium-level vision, e.g. in cars)
Lines can be at any angle. Line start/end is important, too.
Example input in automotive computer vision:
http://www.gmroadmarkings.co.uk/images/gm-road-markings-header.jpghttp://www.pringlesurfacing.co.uk/wp-content/uploads/road-markings-6.jpg
6. June 2016
6 of 38
FastLineSegmentDetection
Line Hypotheses
Line hypotheses are „laid“ at all aftersought angles
Best to maintain input image resolution (avoid undersampling)
Also parts of the hypothesis can be true
7. May 2016
7 of 38
FastLineSegmentDetection
Line Atoms, or: What is a „line“?
„Line segment hypotheses“ verified by edge detection
(central difference thresholding)
Condition 1: No edge along line hypothesis (yellow)
Condition 2: Edge present orthogonal to line hypothesis
Line atom:
One local verification,
both conditions met.
8. May 2016
8 of 38
FastLineDetection
Line Segment Map
We create a 2D map over all line atom tests (0:s and 1:s)
Layers represent the angle bins (e.g. Layer 0: Angle 0-22.5
deg) Layer 0: -12.5° to 12.5°
Layer 5: 60° to 80°
0 0 0 0 0 0 ....
0 0 0 0 0 0 ....
0 0 0 0 1 1 1 0 ....
0 0 0 0 0 0 ....
0 0 0 1 1 1 1 1 0 ....
0 0 0 1 1 1 1 1 0 ....
....
9. June 2016
9 of 38
FastLineSegmentDetection
Challenges
Massive memory bandwidth needed:
Edge detection has to read pixel values repeatedly to evaluate
line hypotheses at all angles.
Edge detection at non-trivial angles
requires bilinear interpolation of input pixels.
On GPU: Texture cache and shared memory alleviates this!
(On CPU: Must often resort to stochastic evaluation – but
makes line detection is non-deterministic .... )
10. June 2016
10 of 38
FastLineSegmentDetection
Inference of Line Segments
Now that we have found line support through edge detection, how to infer
line segments? CPU approaches use Edge Tracking, but that is serial.
We use segmented scan:
From 2 and 2 connected
elements, we can infer that
all 3 are connected, etc.
CUDA, OpenGL Compute:
Shared memory
OpenGL ES 2.0, WebGL:
Repeated shader calls
11. May 2016
11 of 38
FastLineDetection
Line Segment Map to Line List
Inference stores lengths in Line Segment Map
Create Line list (*) via
„Values above Threshold T, preceded by a Zero“
Layer 0: -12.5° to 12.5° Layer 5: 60° to 80°
0 0 0 0 0 0 ....
0 0 0 0 0 0 ....
0 0 0 0 3 2 1 0 ....
0 0 0 0 0 0 ....
0 0 0 5 4 3 2 1 0 ....
0 0 0 5 4 3 2 1 0 ....
....L0: (4,2), l=3 L5: (3,1), l=5 L5: (3,2), l=5
(*) OpenGL or CUDA : Atomics
(OpenGL ES, WebGL:
Data Compaction,postponed)
12. May 2016
12 of 38
FastLineDetection
Result
Line List can now be rendered or used in further processing
....L0: (4,2), l=3 L5: (3,1), l=5 L5: (3,2), l=5
(Line Segment Map is still useful, showing later)
13. May 2016
13 of 38
FastLineSegmentDetection
Musings on detection guarantuees
How can we make sure that every line direction angle is detected? (And only falls
into one angle bin?)
Look at Bresenham algo:
(rasterizes lines based
on their slope angle):
Insight:
For short line segments,
close line angles cannot be told apart
(they have identical Bresenham images).
14. June 2016
14 of 38
FastLineSegmentDetection
Musings on detection guarantuees
How many angle bins needed to catch all angle?
(Without proof: Number of required angle bins is outer rim cells of Bresenham window:
here, 16 angle bins (easy to count), or 8 if 180 degrees symmetric.
Larger Bresenham window : Narrower angle range
Gerneal:
The longer found
line segments are,
the more we can tell about their angle!
Optimization : Use multi-stage to catch all angles;
Then you can subdivide angle bins recursively to narrow down.
15. June 2016
15 of 38
FastLineSegmentDetection
Angle identification in real images
Reality has smaller image gradients than those from black-on-white
Bresenham lines:
But: Central difference cross for any pixel pattern
responds highest on „its“ matching angle bin ->
Proper detection threshold can be determined
(unless crosstalking is desired for ambious cases).
16. May 2016
16 of 38
FastLineDetection
Imperfection tolerance
Segmented scan expects line atoms at every sample position of line hypothesis.
But lines in input image might be imperfect (e.g. withered road marking).
Fill-in step before seg-scan starts.
E.g. allow for one missing line atoms: insert 1 iff 1 before and after.
0 0 1 1 1 0 1 1 0 0 -> 0 0 1 1 1 1 1 1 0 0
BUT: How long defects do we want to tolerate?
-> We might connect line segments that should not. Use dep. on application.
(Note: stochastic approach might ignore imperfection -
but that is not deterministic!)
17. June 2016
17 of 38
FastLineSegmentDetection
Primitive Detection
Complex symbols are needed by high level AI
(e.g. traffic signs or road markings)
Searching through whole image is prohibitively expensive
(esp. considering symbol´s possible rotation angles and scales)
How can we reduce bandwidth and computation requirements?
18. May 2016
18 of 38
FastLineDetection
Primitive Detection
Look first for components of the higher level primitives: Lines!
Only „deeper“ investigation where lines have been found:
Line list -> Massively reduced computation & bandwidth
19. May 2016
19 of 38
FastLineDetection
Example: Quadrangle Detection
We want to look for quadrangles of a side length min. 50 pixels,
made up of (approx.) orthogonal lines (angle 70-110 degrees)
First, we create a list for all lines at 50 pixel min length in the
image (side result: Line segment map)
Start a thread for every line
For every thread: use line origin coordinate to look up in line
segment map if there are other lines originating at same position
(tolerance window,e.g. +/- 3 pixels in x and y).
Effect: Maintain spatial correlation of lines via line segment map,
but benefit from reduced parallelism of line list to detect quads.
20. May 2016
20 of 38
FastLineSegmentDetection
Primitives from Line Detection
(OpenGL, coming in WebGL)
Higher level primitives (e.g. parallel lines, quadrilaterals,
vector symbols, ...) usually too complex to search for in
whole image (scale, rotation, ...)
Data compaction reduces candidates to line segments of
required length (as parts of above primitives)
Side results of 2D line segment maps (one per line angle bin)
still provides spatial neighbourhood info
Correlation only done in relevant spots (with tolerances)
Augmented Reality Marker Tracking in
WebGL browser, mobile and desktop, without .exe
Computer Vision tasks on limited OpenGL ES 2.0 hardware
(e.g. automotive, robotics, … )
21. May 2016
21 of 38
FastLineDetection
Primitive detection in HPC signal processing
This can be generalized, detecting complex shapes that are comprised of
subshapes of similar „atoms“. Atom and sub-shape identification limits
complexity of shape search to promising locations. Shapes can be built in
multiple stages that limit complexity every stage.
Example from astronomy:
Stars as atoms
Constellations as Symbols.
Multi-stage
Detect atoms (stars),
then two subshapes of
“The Great Bear“, then see if
the candidates comprise final.
N-dimension as well!
23. May 2016
23 of 38
FastLineSegmentDetection
Projects „WebGL Computer Vision„
HTML5 enables real-time video input
WebGL enables GPU access from Javascript
Limited (only OpenGL ES level), but 2008
algos for data compaction apply!
-> can extract sparse feature lists, build
quadtrees, octrees, geometry shader, etc.
Line detection, Object tracking, …
Contact me if you are curious and I give
you a short intro!
24. May 2016
24 of 38
FastLineSegmentDetection
Bounding Box Tracking in WebGL
https://www.geofront.eu/webgl/bboxpyramid
Quick tracking of largest pixel group of certain color
Threshold pixels, assume small bounding boxes
Data Parallel Reduction:
Merge bounding boxes (if adjacent) OR
Choose largest one (if competing)
Interactive run times on mobile GPUs
Doesn´t have to be color (e.g.group local motion
vectors)
25. May 2016
25 of 38
FastLineSegmentDetection
Photogrammetry
Reflective materials and their lighting
are hard to reproduce in 3D rendering
3D Reproduction with light fields,
i.e. dense view acquisition.
(2D Video Compression for elimination of redundancy –
later depth maps with proj. texture mapping for compression a
and view angle interpolation)
http://www.geofront.eu/demos/360rotate
26. May 2016
26 of 38
FastLineDetection
Other data-parallel research
HistoPyramids have been extended to create quadtrees and
octrees through bottom-up analysis:
www.geofront.eu/thesis.pdf
Summed Area Ripmaps fix precision issues of
Summed Area Tables / Integral Images:
http://on-demand.gputechconf.com/gtc/2012/presentations/S0096-Summed-Area-Ripmaps.pdf
(Note for implementation: US patent filed!)
Connected Components using full GPU parallelism:
http://on-demand.gputechconf.com/gtc/2013/presentations/S3193-Connected-Components-Kepler.pdf
28. May 2016
28 of 38
FastLineDetection
Data Compaction
(the „postponed“
algorithm explanation
from Line List generation)
29. May 2016
29 of 38
FastLineDetection
Line Segment Map to Line List
Inference stores lengths in Line Segment Map
Create Line list (*) via
„Values above Threshold T, preceded by a Zero“
Layer 0: -12.5° to 12.5° Layer 5: 60° to 80°
0 0 0 0 0 0 ....
0 0 0 0 0 0 ....
0 0 0 0 3 2 1 0 ....
0 0 0 0 0 0 ....
0 0 0 5 4 3 2 1 0 ....
0 0 0 5 4 3 2 1 0 ....
....L0: (4,2), l=3 L0: (3,1), l=5 L0: (3,2), l=5
(*) OpenGL or CUDA : Atomics
(OpenGL ES, WebGL:
Data Compaction,postponed)
30. 30 of 38
FastLineSegmentDetection
Data-Parallel Challenges: Data Compaction
Our task: Select elements from a larger array, write into a list
Example from Computer Vision: List of all black pixels in an image
Step 1: Detect black pixels:
Step 2: Create a list of detected pixels
31. 31 of 38
FastLineSegmentDetection
Data Compaction: Problem task in 1D
Keep number of elements from input, based on a
Classifier:
Implementation is trivial on CPU, single-thread.
On GPU: Need to parallelize into 10k threads!
First count number of output elements
using data-parallel reduction!
32. 32 of 38
FastLineSegmentDetection
Data Compaction via HistoPyramid:Buildup
First, count number of output elements,
e.g. 4:1 data-parallel reduction
(Note the reduction pyramid, it is retained - HistoPyramid)
Can now allocate compact output, no spill.
But how are output elements generated?
Histogram pyramid /
HistoPyramid
33. 33 of 38
FastLineSegmentDetection
Data Compaction via HistoPyramid: Traversal
Output generate: Start one thread per output element
Each output thread traverses reduction pyramid (read-only)
No read/write hazards = Data-parallel output writing!
As many threads as output elements
36. May 2016
38 of 38
FastLineSegmentDetection
GeoCast & GeoScene
https://www.geofront.eu/blog/geoscene-and-geocast-formats.html
Data Exchange between Computer Vision and Computer
Graphics requires exact viewing ray mapping, also for
depth maps
GeoCast provides common data format using OpenGL!
Useful for virtual simulation testing of computer vision
algorithms (e.g. AIT has started using Blender for this)
Multi-view scene reconstruction requires complete camera
paths as well.
Generate arbitrary testing scenarios, and ground truth.
37. May 2016
39 of 38
FastLineSegmentDetection
GeoCast & GeoScene
Top view and more using proxy geometry
With proxy geometry such as a quad describing the street level, the GPU can reconstruct car viewpoints or help
debug vision and decision making of car AI.
https://www.geofront.eu/demos/20160318_street_camviews_on_proxy/
38. May 2016
40 of 38
FastLineSegmentDetection
GeoCast & GeoScene
„Depth map projection“
GeoCast faciliates data exchange with data sources such as depth cameras, laser scanners, 3d modelling
GPU helps reconstructs novel views
from partial depth surfaces using Z-buffer