11 research outputs found
Generating Triangulated Macromolecular Surfaces by Euclidean Distance Transform
Macromolecular surfaces are fundamental representations of their three-dimensional geometric shape. Accurate calculation of protein surfaces is of critical importance in the protein structural and functional studies including ligand-protein docking and virtual screening. In contrast to analytical or parametric representation of macromolecular surfaces, triangulated mesh surfaces have been proved to be easy to describe, visualize and manipulate by computer programs. Here, we develop a new algorithm of EDTSurf for generating three major macromolecular surfaces of van der Waals surface, solvent-accessible surface and molecular surface, using the technique of fast Euclidean Distance Transform (EDT). The triangulated surfaces are constructed directly from volumetric solids by a Vertex-Connected Marching Cube algorithm that forms triangles from grid points. Compared to the analytical result, the relative error of the surface calculations by EDTSurf is <2–4% depending on the grid resolution, which is 1.5–4 times lower than the methods in the literature; and yet, the algorithm is faster and costs less computer memory than the comparative methods. The improvements in both accuracy and speed of the macromolecular surface determination should make EDTSurf a useful tool for the detailed study of protein docking and structure predictions. Both source code and the executable program of EDTSurf are freely available at http://zhang.bioinformatics.ku.edu/EDTSurf
Efficient Irregular Wavefront Propagation Algorithms on Hybrid CPU-GPU Machines
In this paper, we address the problem of efficient execution of a computation
pattern, referred to here as the irregular wavefront propagation pattern
(IWPP), on hybrid systems with multiple CPUs and GPUs. The IWPP is common in
several image processing operations. In the IWPP, data elements in the
wavefront propagate waves to their neighboring elements on a grid if a
propagation condition is satisfied. Elements receiving the propagated waves
become part of the wavefront. This pattern results in irregular data accesses
and computations. We develop and evaluate strategies for efficient computation
and propagation of wavefronts using a multi-level queue structure. This queue
structure improves the utilization of fast memories in a GPU and reduces
synchronization overheads. We also develop a tile-based parallelization
strategy to support execution on multiple CPUs and GPUs. We evaluate our
approaches on a state-of-the-art GPU accelerated machine (equipped with 3 GPUs
and 2 multicore CPUs) using the IWPP implementations of two widely used image
processing operations: morphological reconstruction and euclidean distance
transform. Our results show significant performance improvements on GPUs. The
use of multiple CPUs and GPUs cooperatively attains speedups of 50x and 85x
with respect to single core CPU executions for morphological reconstruction and
euclidean distance transform, respectively.Comment: 37 pages, 16 figure
Execução eficiente do padrão de propagação de ondas irregulares na arquitetura Many Integrated Core
Dissertação (mestrado)—Universidade de BrasĂlia, Instituto de CiĂŞncias Exatas, Departamento de CiĂŞncia da Computação, Programa de PĂłs-Graducação em Informática, 2016.A execução eficiente de algoritmos de processamento de imagens Ă© uma área ativa da Bioinformática. Uma das classes de algoritmos em processamento de imagens ou de padrĂŁo de computação comum nessa área Ă© a Irregular Wavefront Propagation Pattern (IWPP). Nessa classe, elementos propagam informações para seus vizinhos em forma de ondas de propagação. Esse padrĂŁo de propagação resulta em acessos a dados e expansões irregulares. Por essa caracterĂstica irregular, implementações paralelas atuais dessa classe de algoritmos necessitam de operações atĂ´micas, o que acaba sendo muito custoso e tambĂ©m inviabiliza a implementação por meio de instruções Single Instruction, Multiple Data (SIMD) na arquitetura Many Integrated Core (MIC), que sĂŁo fundamentais para atingir alto desempenho nessa arquitetura. O objetivo deste trabalho Ă© reprojetar o algoritmo Irregular Wavefront Propagation Pattern, de forma a possibilitar sua eficiente execução em processadores com arquitetura Many Integrated Core que utilizem instruções SIMD. Neste trabalho, utilizando o Intel® Xeon Phi™, foram implementadas uma versĂŁo vetorizada, apresentando ganhos de atĂ© 5:63 em relação Ă versĂŁo nĂŁo-vetorizada; uma versĂŁo paralela utilizando fila First In, First Out (FIFO) cuja escalabilidade demonstrou-se boa com speedups em torno de 55 em relação Ă um nĂşcleo do coprocessador; uma versĂŁo utilizando fila de prioridades cuja velocidade foi de 1:62 mais veloz que a versĂŁo mais rápida em GPU conhecida na literatura, e uma versĂŁo cooperativa entre processadores heterogĂŞneos que permitem processar imagens que ultrapassem a capacidade de memĂłria do Intel® Xeon Phi™, e tambĂ©m possibilita a utilização de mĂşltiplos dispositivos na execução do algoritmo.The efficient execution of image processing algorithms is an active area of Bioinformatics. In image processing, one of the classes of algorithms or computing pattern that works with irregular data structures is the Irregular Wavefront Propagation Pattern (IWPP). In this class, elements propagate information to neighbors in the form of wave propagation. This propagation results in irregular access to data and expansions. Due to this irregularity, current implementations of this class of algorithms requires atomic operations, which is very costly and also restrains implementations with Single Instruction, Multiple Data (SIMD) instructions in Many Integrated Core (MIC) architectures, which are critical to attain high performance on this processor. The objective of this study is to redesign the Irregular Wavefront Propagation Pattern algorithm in order to enable the efficient execution on processors with Many Integrated Core architecture using SIMD instructions. In this work, using the Intel® Xeon Phi™ coprocessor, we have implemented a vector version of IWPP with up to 5:63 gains on non-vectored version, a parallel version using First In, First Out (FIFO) queue that attained speedup up to 55 as compared to the single core version on the coprocessor, a version using priority queue whose performance was 1:62 better than the fastest version of GPU based implementation available in the literature, and a cooperative version between heterogeneous processors that allow to process images bigger than the Intel® Xeon Phi™ memory and also provides a way to utilize all the available devices in the computation
Image watermarking, steganography, and morphological processing
With the fast development of computer technology, research in the fields of multimedia security, image processing, and robot vision have recently become popular. Image watermarking, steganogrphic system, morphological processing and shortest path planning are important subjects among them. In this dissertation, the fundamental techniques are reviewed first followed by the presentation of novel algorithms and theorems for these three subjects.
The research on multimedia security consists of two parts, image watermarking and steganographic system. In image watermarking, several algorithms are developed to achieve different goals as shown below. In order to embed more watermarks and to minimize distortion of watermarked images, a novel watermarking technique using combinational spatial and frequency domains is presented. In order to correct rounding errors, a novel technique based on the genetic algorithm (GA) is developed. By separating medical images into Region of Interest (ROI) and non-ROI parts, higher compression rates can be achieved where the ROI is compressed by lossless compression and the non-ROI by lossy compression. The GA-based watermarking technique can also be considered as a fundamental platform for other fragile watermarking techniques. In order to simplify the selection and integrate different watermarking techniques, a novel adjusted-purpose digital watermarking is developed. In order to enlarge the capacity of robust watermarking, a novel robust high-capacity watermarking is developed. In steganographic system, a novel steganographic algorithm is developed by using GA to break the inspection of steganalytic system.
In morphological processing, the GA-based techniques are developed to decompose arbitrary shapes of big binary structuring elements and arbitrary values of big grayscale structuring elements into small ones. The decomposition is suited for a parallel-pipelined architecture. The techniques can speed up the morphological processing and allow full freedom for users to design any type and any size of binary and grayscale structuring elements.
In applications such as shortest path planning, a novel method is first presented to obtaining Euclidean distance transformation (EDT) in just two scans of image. The shortest path can be extracted based on distance maps by tracking minimum values. In order to record the motion path, a new chain-code representation is developed to allow forward and backward movements. By placing the smooth turning-angle constraint, it is possible to mimic realistic motions of cars. By using dynamically rotational morphology, it is not only guarantee collision-free in the shortest path, but also reduce time complexity dramatically. As soon as the distance map of a destination and collision-free codes have been established off-line, shortest paths of cars given any starting location toward the destination can be promptly obtained on-line
Arquiteturas de hardware para aceleração de algoritmos de reconstrução morfológica
Este trabalho apresenta um estudo da implementação de algoritmos para a reconstrução morfológica de imagens bio-medicas em FPGAs (Field Programmable Gate Arrays). As arquiteturas
foram baseadas nos algoritmos Sequential Reconstruction (SR) e Fast Hybrid (FH) usando linguagem de descrição de hardware VHDL (Very High Description Language). A metodologia
para avaliar a plataforma consistiu em verificar a arquitetura projetada no QuestaSim, fornecendo
como dados de entrada as imagens a ser reconstruĂdas. Adicionalmente, a validação dos resultados
da arquitetura foi feita usando linguagem C ou Matlab (usando a função imreconstruct). Além
disso, um estudo consumo de recursos de hardware para diferentes tamanhos e conteĂşdos de
imagens foram realizados com o intuito de verificar a aplicabilidade dos algoritmos em arquiteturas
reconfiguráveis. Neste trabalho, para a aceleração do processo de reconstrução da imagem foi
proposta uma arquitetura reconfigurável baseada no algoritmo FH junto com um algoritmo de
aprendizagem de máquina, especificamente uma máquina de vetores de suporte (SVM). Para o
treinamento da SVM foi usada uma metodologia de verificação/validação obtendo aproximadamente 20.000 dados de treinamento. Finalmente, foi implementada uma arquitetura que particiona
a imagem original em quatro unidades de processamento, processando cada unidade em paralelo.
O sistema final implementado fornece um pixel processado por cada ciclo de relĂłgio, depois de um
tempo de latência, sendo aproximadamente 8 vezes mais rápida que sua versão não particionada.
Adicionalmente, foram feitas comparações rodando os algoritmos de reconstrução morfológica em
um processador ARM embarcado dentro do FPGA.Coordenação de Aperfeiçoamento de Pessoal de NĂvel Superior (CAPES).This work presents a study of the implementation of algorithms for the morphological reconstruction of bio-medical images in FPGAs (Field Programmable Gate Arrays). The architectures
were based on Sequential Reconstruction (SR) algorithms and Fast Hybrid (FH), using VHDL
(Very High Description Language). The methodology for the evaluation of the platform consisted
of verifying the architecture designed in QuestaSim, providing the images to be reconstructed
as input data. Additionally, the validation of the results of the architecture was made using C or
Matlab languages (using the imreconstruct function).
Additionally, a study of hardware resource consumption for different sizes and content of
images was conducted, in order to verify the applicability of the algorithms in reconfigurable
architectures. In this work, in order to accelerate the image reconstruction process, a reconfigurable
architecture based on the FH algorithm is proposed together with machine learning, specifically a
support vector machine (SVM). For the SVM training a verification/validation methodology was
used, obtaining approximately 20,000 training data. Finally, an architecture was implemented that
partitions the original image in four processing units, processing each unit in parallel. The final
system implemented provides one pixel processed for each clock cycle, after a latency time, being
approximately 8 times faster than its unpartitioned version. Lastly, comparisons were made by
running the morphological reconstruction algorithms in an ARM processor embedded within the
FPGA
Calculs par éléments finis sur des géométries de mousses reconstruites à partir d'images tomographiques
Cette thèse présente une procédure automatisée pour construire des volumes re-
présentatifs à partir d’images tomographiques de matériaux cellulaires, en consid-
érant tout particulièrement le cas des mousses. L’objectif final de cette procédure
est de produire des géométries qui peuvent être maillées à des fins d’utilisations
dans des solveurs éléments finis; avec l’objectif d’analyser les comportements mé-
caniques de mousses ouvertes. La méthode proposée consiste à dilater et ajuster
un ensemble d’ellipsoides à chaque cellule de la mousse considérée. Ces ellipsoides
sont initialement déterminés en calculant les maxima local du champ des distances
aux entretoises/parois des cellules obtenues à partir d’images tomographiques. En-
suite, des ellipsoides auxiliaires sont construits afin de mieux coller à la géome-
trie de la mousse. A partir des surfaces des ellipsoides est extrait un ensemble de
points “extérieurs” associés à des normales locales. Finallement, à partir de cet
ensemble de points et normales associées, une représentation de la surface de la
mousse est obtenue au moyen de l’algorithme de reconstruction de surface de Pois-
son. La procédure proposée dépend donc entièrement des voxels de l’image tomo-
graphique et est indépendante de toute statistique de distribution que pourraient
adopter les cellules de la mousse. En conséquence, cette procédure est capable de
reproduire de manière précise un modèle géométrique fidèle de la microstructure
d’une mousse et ses éventuelles irrégularités. De plus, cette procédure est capable
de traiter de grandes quantités de données qui dépasserraient la RAM disponible en
découpant celles-ci en tranches indépendantes plus petites. L’épaisseur minimale
de chaque tranche est uniquement limitée par la taille maximale des cellules occu-
pant cette tranche. L’efficacité de cette méthode est illustrée en comparant un mod-
èle éléments finis utilisant un maillage généré à partir d’une géométrie obtenue par
cette procédure, à des résultats expérimentaux d’une mousse d’aluminium ouverte
soumise Ă une compression uniaxiale.The present thesis introduces an automated procedure for constructing geometrical
representative volume elements of cellular materials from computerised tomogra-
phy, with an emphasis on open foams. The final aim of this procedure is to generate
meshable geometries that can be used in some finite element method in order to
analyse their mechanical behaviour. The methodology consists in growing and fit-
ting a set of ellipsoids to each cell foam. These ellipsoids are seeded by local maxima
of the distance to the struts/walls obtained from computerised tomography images.
Then, auxiliary ellipsoids are constructed in order to better fit local struts’ geome-
tries. From ellipsoids’ surfaces, a set of “exterior” points and associated normals is
extracted. Finally, from this set, a geometry is obtained using a Poisson surface re-
construction. This methodology is thus fully voxel-based and does not depends on
any assumption about the statistical distributions of the foam cells. Therefore, it is
able to reproduce an accurate geometric model of the foams’ microstructure and its
possible irregularities. Moreover, this procedure allows the processing of large 3D
data sets that do not fit the random access memory by slicing it into smaller indepen-
dent chunks. The minimal thickness of each chunk is only limited by the maximum
cell size lying inside this chunk. The effectiveness of the proposed approach is il-
lustrated by comparing it to finite element simulations with experimental results of
uniaxial compressions of an open foam