A. Gentile, Salvatore Segreto, F. Sorbello, G. Vassallo, S. Vitabile, V. Vullo
Geometric object representation and their transformations are the two key aspects in computer graphics applications. Traditionally, compute-intensive matrix calculations are involved to model and render 3D scenery. Geometric algebra (a.k.a. Clifford algebra) is gaining growing attention for its natural way to model geometric facts coupled with its being a powerful analytical tool for symbolic calculations. In this paper, the architecture of CliffoSor (Clifford Processor) is introduced. ClifforSor is an embedded parallel coprocessing core that offers direct hardware support to Clifford algebra operators. A prototype implementation on an FPGA board is detailed. Initial test results show more than 4/spl times/ speedup for Clifford products against the analogous operations in GAIGEN, a standard geometric algebra library generator for general purpose processors.
{"title":"CliffoSor: a parallel embedded architecture for geometric algebra and computer graphics","authors":"A. Gentile, Salvatore Segreto, F. Sorbello, G. Vassallo, S. Vitabile, V. Vullo","doi":"10.1109/CAMP.2005.15","DOIUrl":"https://doi.org/10.1109/CAMP.2005.15","url":null,"abstract":"Geometric object representation and their transformations are the two key aspects in computer graphics applications. Traditionally, compute-intensive matrix calculations are involved to model and render 3D scenery. Geometric algebra (a.k.a. Clifford algebra) is gaining growing attention for its natural way to model geometric facts coupled with its being a powerful analytical tool for symbolic calculations. In this paper, the architecture of CliffoSor (Clifford Processor) is introduced. ClifforSor is an embedded parallel coprocessing core that offers direct hardware support to Clifford algebra operators. A prototype implementation on an FPGA board is detailed. Initial test results show more than 4/spl times/ speedup for Clifford products against the analogous operations in GAIGEN, a standard geometric algebra library generator for general purpose processors.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122039468","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The promise of next-generation computer technologies, such as nano-electronics, implies a number of serious alterations to the design flow of digital circuits. One of the most serious issues is related to circuit layout, as conventional lithographic techniques do not scale to the molecular level. A second important issue concerns fault tolerance: molecular-scale devices will be subject to fault densities that are orders of magnitude greater than silicon-based circuits. In our work, we are investigating a different approach to the design of complex computing systems, inspired by the developmental process of multi-cellular organisms in nature. This approach has led us to define a hierarchical system based on several levels of complexity, ranging from the molecule (modeled by an element of a programmable logic device when the system is applied to silicon) to the organism, defined as an application-specific multi-processor system. By setting aside some of the conventional circuit design priorities, namely size and (to a certain extent) performance, we are able to design fully scalable systems endowed with some properties not commonly found in digital circuits. Most notably, by exploiting a hierarchical self-repair approach, our systems are able to tolerate higher fault densities, whereas a self-replication mechanism allows our arrays of processing elements to self-organize, greatly reducing the layout complexity of the system.
{"title":"Bio-inspired computing architectures: the embryonics approach","authors":"G. Tempesti, D. Mange, A. Stauffer","doi":"10.1109/CAMP.2005.56","DOIUrl":"https://doi.org/10.1109/CAMP.2005.56","url":null,"abstract":"The promise of next-generation computer technologies, such as nano-electronics, implies a number of serious alterations to the design flow of digital circuits. One of the most serious issues is related to circuit layout, as conventional lithographic techniques do not scale to the molecular level. A second important issue concerns fault tolerance: molecular-scale devices will be subject to fault densities that are orders of magnitude greater than silicon-based circuits. In our work, we are investigating a different approach to the design of complex computing systems, inspired by the developmental process of multi-cellular organisms in nature. This approach has led us to define a hierarchical system based on several levels of complexity, ranging from the molecule (modeled by an element of a programmable logic device when the system is applied to silicon) to the organism, defined as an application-specific multi-processor system. By setting aside some of the conventional circuit design priorities, namely size and (to a certain extent) performance, we are able to design fully scalable systems endowed with some properties not commonly found in digital circuits. Most notably, by exploiting a hierarchical self-repair approach, our systems are able to tolerate higher fault densities, whereas a self-replication mechanism allows our arrays of processing elements to self-organize, greatly reducing the layout complexity of the system.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130665114","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In this paper we present a way in which the JPEG2000 system architecture structure can be accessed via the network using Web services and dynamically created Web pages. With our approach we are capable of creating an on demand service to extract and insert metadata in .JP2 image files and, using classes even not tuned for this application, we can compute and extract features from images based on wavelet decomposition in order to made them available for reinsertion as metadata. The Web service interface can serve both as a foundation for Web interfaces and as an API of its own.
{"title":"Extracting metadata from JPEG2000 compressed images using Web services","authors":"M. Aguzzi, M. Albanesi","doi":"10.1109/CAMP.2005.26","DOIUrl":"https://doi.org/10.1109/CAMP.2005.26","url":null,"abstract":"In this paper we present a way in which the JPEG2000 system architecture structure can be accessed via the network using Web services and dynamically created Web pages. With our approach we are capable of creating an on demand service to extract and insert metadata in .JP2 image files and, using classes even not tuned for this application, we can compute and extract features from images based on wavelet decomposition in order to made them available for reinsertion as metadata. The Web service interface can serve both as a foundation for Web interfaces and as an API of its own.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125446260","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Several hard problems have to be addressed in order to parallelize image analysis algorithms. Indeed, at the region level, these algorithms handle irregular (and sometimes strongly dynamic) data-structures. Moreover, they often lead to an unbalanced amount of computations, which is quite impossible to foresee offline. This paper focus on the parallelization of the ANET image analysis programming environment. Thanks to graph related data structures and efficient computing primitives, ANET allows rapid image algorithm prototyping. But in return, these primitives are difficult to parallelize. We present a solution for powerful implicit parallelization of the ANET environment, without any change in the application programming interface. The ANET API is summarized and illustrated with some examples. Several parallelization experimentations are reported. The solution we propose is detailed, and results are given on complete image analysis applications. ANET appears as a powerful environment, both for its expressiveness that allows rapid prototyping and for its implicit parallelization that allows good computation time.
{"title":"Parallelizing image analysis algorithms: ANET solution and performances","authors":"B. Ducourthial, A. Mérigot, Nicolas Sicard","doi":"10.1109/CAMP.2005.39","DOIUrl":"https://doi.org/10.1109/CAMP.2005.39","url":null,"abstract":"Several hard problems have to be addressed in order to parallelize image analysis algorithms. Indeed, at the region level, these algorithms handle irregular (and sometimes strongly dynamic) data-structures. Moreover, they often lead to an unbalanced amount of computations, which is quite impossible to foresee offline. This paper focus on the parallelization of the ANET image analysis programming environment. Thanks to graph related data structures and efficient computing primitives, ANET allows rapid image algorithm prototyping. But in return, these primitives are difficult to parallelize. We present a solution for powerful implicit parallelization of the ANET environment, without any change in the application programming interface. The ANET API is summarized and illustrated with some examples. Several parallelization experimentations are reported. The solution we propose is detailed, and results are given on complete image analysis applications. ANET appears as a powerful environment, both for its expressiveness that allows rapid prototyping and for its implicit parallelization that allows good computation time.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115966216","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
R. Aguilar-Ponce, Ashok Kumar, J. L. Tecpanecatl-Xihuitl, M. Bayoumi
This paper presents distributed, automated, scene surveillance architecture. Object detection and tracking is performed by a set of region and object agents. The area under surveillance is divided in several sub-areas. One camera is assigned to each sub-area. A region agent is responsible for monitoring a given sub-area. Background subtraction is first performed on the scene taken by the camera. Based on the foreground mask, the region agent segments the incoming frame and creates object agents dedicated to tracking detected objects. Tracking information and segments are sent to a scene processing unit that analyzed this information and determined if a threat pattern is present at the scene and performed appropriate action.
{"title":"An architecture for automated scene understanding","authors":"R. Aguilar-Ponce, Ashok Kumar, J. L. Tecpanecatl-Xihuitl, M. Bayoumi","doi":"10.1109/CAMP.2005.11","DOIUrl":"https://doi.org/10.1109/CAMP.2005.11","url":null,"abstract":"This paper presents distributed, automated, scene surveillance architecture. Object detection and tracking is performed by a set of region and object agents. The area under surveillance is divided in several sub-areas. One camera is assigned to each sub-area. A region agent is responsible for monitoring a given sub-area. Background subtraction is first performed on the scene taken by the camera. Based on the foreground mask, the region agent segments the incoming frame and creates object agents dedicated to tracking detected objects. Tracking information and segments are sent to a scene processing unit that analyzed this information and determined if a threat pattern is present at the scene and performed appropriate action.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132538754","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This paper describes the mapping of a recently introduced template matching algorithm based on the Normalized Cross Correlation (NCC) on a general purpose processor endowed with SIMD (Single Instruction Multiple Data) multimedia instructions. The algorithm relies on the Bounded Partial Correlation (BPC) technique, which consists in deploying a sufficient condition to detect unsatisfactory matching candidates at a reduced computational cost. First, we briefly describe the BPC technique and highlight the related expensive computations. Then, based on the analysis of the major SIMD multimedia instruction set extensions available nowadays, we define a processor-independent multimedia instruction set and show how to carry out the most expensive BPC calculations using these pseudo-instructions. Finally, we provide experimental results obtained mapping the proposed algorithm on a mainstream multimedia SIMD instruction set (i.e. MMX). We compare these results with those obtained with the brute force NCC algorithm. The results show that the BPC technique is suited for a parallel SIMD-style mapping and that its effectiveness can be significantly improved using the multimedia instructions available nowadays in most general purpose CPUs.
{"title":"Speeding-up NCC-based template matching using parallel multimedia instructions","authors":"L. D. Stefano, S. Mattoccia, Federico Tombari","doi":"10.1109/CAMP.2005.49","DOIUrl":"https://doi.org/10.1109/CAMP.2005.49","url":null,"abstract":"This paper describes the mapping of a recently introduced template matching algorithm based on the Normalized Cross Correlation (NCC) on a general purpose processor endowed with SIMD (Single Instruction Multiple Data) multimedia instructions. The algorithm relies on the Bounded Partial Correlation (BPC) technique, which consists in deploying a sufficient condition to detect unsatisfactory matching candidates at a reduced computational cost. First, we briefly describe the BPC technique and highlight the related expensive computations. Then, based on the analysis of the major SIMD multimedia instruction set extensions available nowadays, we define a processor-independent multimedia instruction set and show how to carry out the most expensive BPC calculations using these pseudo-instructions. Finally, we provide experimental results obtained mapping the proposed algorithm on a mainstream multimedia SIMD instruction set (i.e. MMX). We compare these results with those obtained with the brute force NCC algorithm. The results show that the BPC technique is suited for a parallel SIMD-style mapping and that its effectiveness can be significantly improved using the multimedia instructions available nowadays in most general purpose CPUs.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130048858","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Yoshihiro Watanabe, T. Komuro, S. Kagami, M. Ishikawa
In this paper, we propose a new architecture that can extract information of numerous objects in an image at highspeed. Various characteristics can be obtained from the image moments. The proposed architecture simultaneously extracts the moments of multiple objects in parallel. This parallel extraction enables a significant reduction in the amount of calculation required. In addition, asynchronous operation allows fast processing. We believe that our architecture can obtain more information in real-time even at high frame rates, providing advantages in a wide range of applications, mainly for image measurement. This paper describes our proposed architecture and some results on its implementation in FPGA.
{"title":"Parallel extraction architecture for image moments of numerous objects","authors":"Yoshihiro Watanabe, T. Komuro, S. Kagami, M. Ishikawa","doi":"10.1109/CAMP.2005.38","DOIUrl":"https://doi.org/10.1109/CAMP.2005.38","url":null,"abstract":"In this paper, we propose a new architecture that can extract information of numerous objects in an image at highspeed. Various characteristics can be obtained from the image moments. The proposed architecture simultaneously extracts the moments of multiple objects in parallel. This parallel extraction enables a significant reduction in the amount of calculation required. In addition, asynchronous operation allows fast processing. We believe that our architecture can obtain more information in real-time even at high frame rates, providing advantages in a wide range of applications, mainly for image measurement. This paper describes our proposed architecture and some results on its implementation in FPGA.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125717672","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. D. Stefano, Alessandro Scaglione, Giuseppe Costantino Giaconia
A hardware implementation of an adaptive noise canceller (ANC) is presented. It has been synthesized within an FPGA, using a modified version of the least mean square (LMS) error algorithm. The results obtained so far show a significant decrease of the required gate count when compared with a standard LMS implementation, while increasing the ANC bandwidth and signal to noise (S/N) ratio. This novel adaptive noise canceller is then useful for enhancing the S/N ratio of data collected from sensors (or sensor arrays) working in noisy environment, or dealing with potentially weak signals.
{"title":"Efficient FPGA implementation of an adaptive noise canceller","authors":"A. D. Stefano, Alessandro Scaglione, Giuseppe Costantino Giaconia","doi":"10.1109/CAMP.2005.22","DOIUrl":"https://doi.org/10.1109/CAMP.2005.22","url":null,"abstract":"A hardware implementation of an adaptive noise canceller (ANC) is presented. It has been synthesized within an FPGA, using a modified version of the least mean square (LMS) error algorithm. The results obtained so far show a significant decrease of the required gate count when compared with a standard LMS implementation, while increasing the ANC bandwidth and signal to noise (S/N) ratio. This novel adaptive noise canceller is then useful for enhancing the S/N ratio of data collected from sensors (or sensor arrays) working in noisy environment, or dealing with potentially weak signals.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121127595","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This work describes a method used to recognize a person situated in indoor environments. It estimates the direction in which the person is turned. The position coordinates are known to the system thanks to localization techniques that use Bluetooth technology. The utilization of such information in intelligent environments allows the execution of actions that interact with the customer. The paper focuses on our human figure recognition technique, which uses image analysis to calculate the direction angle a person is turned towards. Figure recognition is accomplished by comparing the colours of the body parts that mark it out, such as: hair colour, face colour, and clothes colour. The calculation of the direction is finally achieved by the analysis of the regions that identify face, hair, and shoes in comparison with body axis. Our software implements a new technique to represent a boundary (path of line) which makes the operations between sets, and the valuation of the inner pixels, simple and fast.
{"title":"Human figure recognition and the estimation of its direction","authors":"A. Genco, Emanuele Varrica","doi":"10.1109/CAMP.2005.57","DOIUrl":"https://doi.org/10.1109/CAMP.2005.57","url":null,"abstract":"This work describes a method used to recognize a person situated in indoor environments. It estimates the direction in which the person is turned. The position coordinates are known to the system thanks to localization techniques that use Bluetooth technology. The utilization of such information in intelligent environments allows the execution of actions that interact with the customer. The paper focuses on our human figure recognition technique, which uses image analysis to calculate the direction angle a person is turned towards. Figure recognition is accomplished by comparing the colours of the body parts that mark it out, such as: hair colour, face colour, and clothes colour. The calculation of the direction is finally achieved by the analysis of the regions that identify face, hair, and shoes in comparison with body axis. Our software implements a new technique to represent a boundary (path of line) which makes the operations between sets, and the valuation of the inner pixels, simple and fast.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130682101","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This paper describes a work in progress on a multisensor system for 3D data acquisition. The system core structure is a 3D-range scan based on the well known active triangulation procedure and made of a camera, a laser light emitter and a software driven motor. The core system allows us to acquire dense point clouds of objects of about 50 cm. The system today hosts a second camera and thus is able to perform 3D reconstruction from two slightly different viewpoints and produce more dense point clouds. Also, since the motor can be driven back to the original position multiple scans can take place, to obtain smooth surfaces, and multiple information, such as texture and reliability measures. An alternative way of obtaining texture information is by means of a linear camera, also included in the system. We present results obtained with the current system, and describe extensions of the system in estimating noise and producing a more complex geometry description.
{"title":"An open system for 3D data acquisition from multiple sensor","authors":"F. Isgrò, F. Odone, A. Verri","doi":"10.1109/CAMP.2005.13","DOIUrl":"https://doi.org/10.1109/CAMP.2005.13","url":null,"abstract":"This paper describes a work in progress on a multisensor system for 3D data acquisition. The system core structure is a 3D-range scan based on the well known active triangulation procedure and made of a camera, a laser light emitter and a software driven motor. The core system allows us to acquire dense point clouds of objects of about 50 cm. The system today hosts a second camera and thus is able to perform 3D reconstruction from two slightly different viewpoints and produce more dense point clouds. Also, since the motor can be driven back to the original position multiple scans can take place, to obtain smooth surfaces, and multiple information, such as texture and reliability measures. An alternative way of obtaining texture information is by means of a linear camera, also included in the system. We present results obtained with the current system, and describe extensions of the system in estimating noise and producing a more complex geometry description.","PeriodicalId":393875,"journal":{"name":"Seventh International Workshop on Computer Architecture for Machine Perception (CAMP'05)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2005-07-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122380346","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}