Articles by Abiel Aguilar-González

Smart cameras integrate processing close to the image sensor, so they can deliver high-level info... more Smart cameras integrate processing close to the image sensor, so they can deliver high-level information to a host computer or high-level decision process. One of the most common processing is the visual features extraction since many vision-based use-cases are based on such algorithm. Unfortunately, in most of cases, features detection algorithms are not robust or do not reach real-time processing. Based on these limitations, a feature detection algorithm that is robust enough to deliver robust features under any type of indoor / outdoor scenarios is proposed. This was achieved by applying a non-textured corner filter combined to a subpixel refinement. Furthermore, an FPGA architecture is proposed. This architecture allows compact system design, real-time processing for Full HD images (it can process up to 44 frames/91.238.400 pixels per second for Full HD images), and high efficiency for smart camera implementations (similar hardware resources than previous formulations without subpixel refinement and without non-textured corner filter). For accuracy/robustness, experimental results for several real world scenes are encouraging and show the feasibility of our algorithmic approach .

The stereo matching is one of the most widely used algorithms in real-time image processing appli... more The stereo matching is one of the most widely used algorithms in real-time image processing applications such as positioning systems for mobile robots, three-dimensional building mapping and both recognition, detection and three-dimensional reconstruction of objects. In order to improve the runtime, stereo matching algorithms often have been implemented in dedicated hardware such as FPGA or GPU devices. In this article an FPGA stereo matching unit based on fuzzy logic is described. The proposed method consists of three stages: first, three similarity parameters inherent to each pixel contained in the input stereo pair are determined; later, these parameters are submitted to a fuzzy inference system that determines a value of fuzzy-similarity; finally, the disparity value is determined as the index for the maximum value of the fuzzy-similarity values (zero up to d max). Dense disparity maps are computed at a rate of 76 frames per second for input stereo pairs of 1280x1024 pixel resolution and a maximum expected disparity equal to 15. The developed FPGA architecture provides reduction of the hardware resource demand; up to 67,384, minimum 9,788 for logic units, up to 35,475, minimum 11,766 for bits of memory. Increases the processing speed; up to 78,725,120, minimum 14,417,920 pixels per second and outperforms the accuracy level of most of real-time stereo matching algorithms reported in the literature.

Convolution is an important operation in image processing applications, such as edge detection, s... more Convolution is an important operation in image processing applications, such as edge detection, sharpening, adding blurring and so on. Convolving video streams in real-time is a challenging task for PC systems, however, FPGA devices can successfully be used in these tasks. In this article, the design and implementation of a recongurable FPGA architecture for 2D-convolution filtering is described. The filtered frames are calculated at a rate of 103 frames per second for images up to 1200x720 pixel resolution. By using a shift-based arithmetic and circular buffers, the developed FPGA architecture allows to reduce the hardware resources consumption up to 98% compared to the conventional convolution implementations, provides high speed processing and enables to manage large number of different convolution kernels. On the other hand, by using the CAPH language it is possible to reduce the design time up to 75% compared to the plain VHDL design. Furthermore, to maintain high exibility in concordance with the input video, the developed hardware allows to configure the resolution of the input images with values of 3 x Y up to 1200 x Y , and allows scalability for different sizes of convolution kernels of simple and systematic form. Finally, the developed FPGA architecture for the proposed method was implemented and validated in an FPGA Cyclone II EP2C35F672C6 embedded in an Altera development board DE2.

The stereo matching is one of the most widely used algorithms in real-time image processing appli... more The stereo matching is one of the most widely used algorithms in real-time image processing applications such as positioning systems for mobile robots, three dimensional building mapping and both recognition, detection and three-dimensional reconstruction of objects. In area-based algorithms, the similarity between one pixel of the left image and one pixel of the right image is measured using a correlation index computed on vicinities of these pixels called correlation windows. In order to preserve edges, small windows need to be used. On the other hand, for homogeneous areas, large windows are required. Due to only local information is used, matching between primitives is dificult. In this article, FPGA implementing of an efficient similarity-based adaptive window algorithm for dense disparity maps estimation in real-time is described. In order to evaluate the proposed algorithm behavior, the developed FPGA architecture was simulated via ModelSim-Altera 6.6c using different synthetic stereo pairs and different sizes for correlation window. In addition, the FPGA architecture was implemented in an FPGA Cyclone IIEP2C35F672C6 embedded in an Altera development board DE2. The disparity maps are computed at a rate of 76 frames per second for stereo pairs of 1280x1024 pixel resolution and a maximum expected disparity equal to 15. The developed FPGA architecture offers better results with respect to the most of real-time area-based stereo matching algorithms reported in the literature, allows increasing the processing speed up to 93,061,120 pixels per second and enables it to be implemented in the majority of the medium-gamma FPGA devices.
In this paper, a novel method that uses both area and feature based information as similarity m... more In this paper, a novel method that uses both area and feature based information as similarity measures for stereo matching is proposed. Area-based information is suited for non-homogeneous regions while feature information helps in homogeneous areas. In order to define a conjugate pair, a fuzzy logic approach that combines the similarity information is used. The proposed method preserves discontinuities while reducing matching errors in homogeneous regions. This proposal is suited for real-time processing using dedicated hardware. We demonstrate and discuss performance using synthetic stereo pairs.
Conference Papers by Abiel Aguilar-González

Proceedings of the 11th International Conference on Distributed Smart Cameras, 2017
One popular task under several computer vision applications is camera pose estimation under video... more One popular task under several computer vision applications is camera pose estimation under video sequences. In previous work, several camera pose estimations approaches have been developed and several algorithms have been proposed. Unfortunately, most previous formulations iterative behavior and depend on nonlinear optimizations applied over some geometric constraint and this limits the performance under embedded applications. For real-time embedded applications , another approach, more efficient in terms of computational size and processing speed could be reached via hardware-based solutions, for example GPU-based solutions. In this work, we present a GPU-based solution for the camera pose problem. As early formulation we focused our algorithm for an autonomous vehicle application. Preliminary results are encouraging and show the viability of the proposed approach.

Proceedings of the 11th International Conference on Distributed Smart Cameras, 2017
Smart cameras are image/video acquisition devices that integrate image processing algorithms clos... more Smart cameras are image/video acquisition devices that integrate image processing algorithms close to the image sensor, so they can deliver high-level information to a host computer or high-level decision process. In this context, a central issue is the implementation of complex and computationally intensive computer vision algorithms inside the camera fabric. For low-level processing, FPGA devices are excellent candidates because they support data paral-lelism with high data throughput. One computer vision algorithm highly promising for FPGA-based smart cameras is feature matching. Unfortunately, most previous feature matching formulations have inefficient FPGA implementations or deliver relatively poor information about the observed scene. In this work, we introduce a new feature-matching algorithm that aims for dense feature matching and at the same time straightforward FPGA implementation. We propose a new mathematical formulation that addressed the feature matching task as a feature tracking problem. We demonstrate that our algorithmic formulation delivers robust feature matching with low mathematical complexity and obtains accuracy superior to previous algorithmic formulations. An FPGA architecture is lay down and, hardware acceleration strategies are discussed. Finally , we applied our feature matching algorithm in a monocular-SLAM system. We show that our algorithmic formulation provides promising results under real world applications.

Proceedings of the 11th International Conference on Distributed Smart Cameras, Sep 5, 2017
Camera pose estimation across video sequences is an important issue under several computer vision... more Camera pose estimation across video sequences is an important issue under several computer vision applications. In previous work, the most popular approach consists on optimization techniques applied over 2D/3D point correspondences for two consecutive frames from a video sequence. Unfortunately, these optimization techniques are iterative and depend on nonlinear optimizations applied over some geometric constraint. For real-time embedded applications, another approach, more efficient in terms of computational size and cost, could be a linear or closed-form solution for the camera pose estimation problem. In this work, we introduce a new approach for camera pose estimation, this approach uses 2D visual features displacements as linear/dependent parameters for the camera pose estimation so, camera pose can be estimated without iterative behavior and without geometric constraints. As result, the proposed algorithm could be implemented inside a small FPGA device, suitable for smart cameras. Preliminary results are encourageous and show the viability of the proposed approach.

Proceedings of the 10th International Conference on Distributed Smart Camera, 2016
In recent years the interest on monocular-SLAM (Simultaneous Localization and Mapping) has increa... more In recent years the interest on monocular-SLAM (Simultaneous Localization and Mapping) has increased, this because nowadays it is possible to find inexpensive, small and light commercial cameras and they provide visual environmental information that can be exploited to create 3D maps and camera pose in an unknown environment. A smart camera that could deliver monocular-SLAM is highly desirable, since it can be the basis of several robotics/drone applications. In this article, we present a new SLAM framework that is robust enough for indoor/outdoor SLAM applications, and at the same time is parallelizable in the context of FPGA architecture design. We introduce new feature-extraction/feature-matching algorithms, suitable for FPGA implementation. We propose an FPGA based sensor-processor architecture where most of the visual processing is carried out in a parallel architecture, and the 3D map construction and camera pose estimation in the processor of a SoC FPGA. An FPGA architecture is lay down and hardware/software partition is discussed. We show that the proposed sensor-processor can deliver high performance under several indoor/outdoor scenarios.

Indoor Positioning and Indoor Navigation (IPIN), 2016 International Conference on, 2016
—Simultaneous Localization and Mapping (SLAM) is the problem of constructing a 3D map while simul... more —Simultaneous Localization and Mapping (SLAM) is the problem of constructing a 3D map while simultaneously keeping track of an agent location within the map. In recent years, work has focused in systems that use a single camera as the only sensing mechanism (monocular-SLAM). 3D reconstruction (map) by monocular-SLAM systems is a point cloud where all points preserve high accuracy and can deliver visual environmental information. However, the maximum number of points in the cloud is limited by the tracked features, this is named " sparse cloud problem ". In this work, we propose a new SLAM framework that is robust enough for indoor/outdoor SLAM applications, and at the same time increases the 3D map density. The point cloud density is increased by applying a new feature-tracking/dense-tracking algorithm in the SLAM formulation. In order to achieve real-time processing, the algorithm is formulated to facilitate a parallel FPGA implementation. Preliminary results show that it is possible to obtain dense mapping (superior to previous work) and accurate camera pose estimation (localization) under several real-world conditions.

Stereo matching is a useful algorithm to infer depth information from two or more of images and h... more Stereo matching is a useful algorithm to infer depth information from two or more of images and has uses in mobile robotics, three-dimensional building mapping and three-dimensional reconstruction of objects. In area-based algorithms, the similarity between one pixel of an image (key frame) and one pixel of another image is measured using a correlation index computed on neighbors of these pixels (correlation windows). In order to preserve edges, the use of small correlation windows is necessary while for homogeneous areas, large windows are required. In addition, to improve the execution time, stereo matching algorithms often are implemented in dedicated hardware such as FPGA or GPU devices. In this article, we present an FPGA stereo matching processor based on the Sum of Hamming Distances (SHD). We propose a grayscale-based similarity criterion, which allows separating the objects and background from the correlation window. By using the similarity criterion, it is possible to improve the performance of any grayscale-based correlation coefficient and reach high performance for homogeneous areas and edges. The developed FPGA architecture reaches high performance compared to other real-time stereo matching algorithms, up to 10% more accuracy and enables to increase the processing speed near to 20 megapixels per second.

A current trend for companies dedicated to product distribution is the use of software tools to d... more A current trend for companies dedicated to product distribution is the use of software tools to determine the shortest route. Effective use of this techniques is essential in order to achieve optimal delivery. However, in most of the cases the route optimization analysis is presented in matrix form, which complicates the interpretation, forcing the user to know software nomenclature and technical terms partially. An alternative to solve this problem is to provide results in graphical form facilitating information to product distribution staff such as distribution division managers, logistics managers, drivers, etc. In this paper, we proposed a three-equation system to transform intersections and flows in image coordinates. These equations work with any route selection model and due to their low mathematical complexity, they allow to process scenarios with a large number of nodes and arcs in seconds. A Geographic Information System (GIS) is presented for product distribution using linear programming with PHP & MySQL.
Nutrimental state of vegetables foods, is a more studied parameter to defined quality them. A way... more Nutrimental state of vegetables foods, is a more studied parameter to defined quality them. A way to predict the deficit of phosphorus and potassium in hydroponic lettuce crops is presented. The method is based on the leaf area sizes at different stages of growth, measured with digital images. For acquisition, the camera was placed perpendicularly to the lettuce leaf, considering technical data of sensor and the known distance between this and the leaf, the area represented by each pixel of the image and the area occupied by the leaf is computed. Nutriment types was related with leaf area size, ANOVA table determined that phosphorus and potassium are the nutrients statistically related to plant growth.

En esta investigación se realizó un experimento factorial completo con los 3 macro nutrimentos pr... more En esta investigación se realizó un experimento factorial completo con los 3 macro nutrimentos principales como factores y 3 niveles de contenido por cada uno, cuando las plantas alcanzaron la madurez se cortaron hojas para capturar las imágenes digitales. La cámara se colocó perpendicularmente a la hoja de lechuga y con los datos técnicos del sensor CCD y la distancia conocida entre este y la hoja, se calculó el área que representa cada píxel de la imagen y así conocer el área que ocupa la hoja. Cuando conocimos el área ocupada por cada hoja de lechuga, se relacionó con el tipo y cantidad de nutrimentos que contenía y estadísticamente se encontró que diferentes combinaciones afectan el tamaño, pero el elemento común en ellas es el fósforo seguido del potasio, el nitrógeno no afecta tanto en el tamaño si no al color. Entonces el método es válido para predecir carencia de fósforo y potasio.

This paper describes an FPGA Correlation-Edge Distance approach for real time disparity map gener... more This paper describes an FPGA Correlation-Edge Distance approach for real time disparity map generation in stereo-vision. The proposed method calculates the disparity map for the input and disparity map for Edge Distance images of a stereopair. In both cases the approximation algorithm of disparity map SAD (Sum of Absolute Differences) is used. The final disparity map is determined from the previously generated maps, considering a homogeneity parameter defined for each point in the scene. Due to low complexity when implementing stereo vision algorithms in FPGA devices, the proposed method was implemented in a Cyclone II EP2C35F672C6 FPGA assembled in an Altera DE2 breadboard. The developed module can process stereo-pairs of 1280x1024 pixel resolution at a rate of 75 frames/s and produces 8-bit dense disparity maps within a range of disparities up to 63 pixels. The presented architecture provides a significant improvement in regions with uniformed texture over correlation based stereo-vision algorithms in the reported literature and an accelerated processing rate.
This article describes the design and efficient implementation of a Takagi Sugeno multivariable F... more This article describes the design and efficient implementation of a Takagi Sugeno multivariable Fuzzy Logic Controller. The application selected is a temperature and humidity controller for a chicken incubator. This design was elaborated using VHDL applying intermediate simulations in order to check for functional verification of all modules integrating the controller. The created circuit was implemented on FPGA Cyclone II EP2C35F672C6 assembled in breadboard Altera DE2. Precision of the model on FPGA was calculated by contrasting the obtained results with the results of simulation using MATLAB & Fuzzy Logic Tool Box.
Theses by Abiel Aguilar-González

The stereo matching is one of the most widely used algorithms in real time image processing appli... more The stereo matching is one of the most widely used algorithms in real time image processing applications such as positioning systems for mobile robots, three-dimensional building mapping and both recognition, detection and three-dimensional reconstruction of objects. In area-based algorithms, the similarity between one pixel of the left image and one pixel of the right image is measured using a correlation index, using these indices is possible to create depth images called disparity maps. Due to only local information is used, matching between primitives is dicult.
In this work the implementation of an algorithm based on fuzzy logic for the estimation of dense disparity maps in real time is described. The proposed method consists of three stages: first, three parameters of similarity inherent to each point contained in the stereo images of input are determined; later, the three parameters of similarity corresponding to each point are submitted to a fuzzy-inference system that determines a value of fuzzy-similarity; finally, the value of corresponding disparity is determined using the values of fuzzy-similarity.
The disparity maps are calculated at a rate of 76 frames per second for stereo images of 1280x1024 pixels of resolution and a maximum expected disparity equal to 15. The developed architecture provides a reduction in the demand of hardware resources of up to 67; 384 logic units, a reduction of up to 129; 344 bits of memory, an increasement of up to 78; 725 pixels per second in the processing speed and results similar to other algorithms reported in the literature.
Uploads
Articles by Abiel Aguilar-González
Conference Papers by Abiel Aguilar-González
Theses by Abiel Aguilar-González
In this work the implementation of an algorithm based on fuzzy logic for the estimation of dense disparity maps in real time is described. The proposed method consists of three stages: first, three parameters of similarity inherent to each point contained in the stereo images of input are determined; later, the three parameters of similarity corresponding to each point are submitted to a fuzzy-inference system that determines a value of fuzzy-similarity; finally, the value of corresponding disparity is determined using the values of fuzzy-similarity.
The disparity maps are calculated at a rate of 76 frames per second for stereo images of 1280x1024 pixels of resolution and a maximum expected disparity equal to 15. The developed architecture provides a reduction in the demand of hardware resources of up to 67; 384 logic units, a reduction of up to 129; 344 bits of memory, an increasement of up to 78; 725 pixels per second in the processing speed and results similar to other algorithms reported in the literature.
In this work the implementation of an algorithm based on fuzzy logic for the estimation of dense disparity maps in real time is described. The proposed method consists of three stages: first, three parameters of similarity inherent to each point contained in the stereo images of input are determined; later, the three parameters of similarity corresponding to each point are submitted to a fuzzy-inference system that determines a value of fuzzy-similarity; finally, the value of corresponding disparity is determined using the values of fuzzy-similarity.
The disparity maps are calculated at a rate of 76 frames per second for stereo images of 1280x1024 pixels of resolution and a maximum expected disparity equal to 15. The developed architecture provides a reduction in the demand of hardware resources of up to 67; 384 logic units, a reduction of up to 129; 344 bits of memory, an increasement of up to 78; 725 pixels per second in the processing speed and results similar to other algorithms reported in the literature.