Object tracking refers to the relocation of specific objects in consecutive frames of a video sequence. Presently, this visual task is still considered an open research issue, and the computer science community attempted solutions from the standpoint of methodologies, algorithms, criteria, benchmarks, and so on. This article introduces a GPU-parallelized swarm algorithm, called the Honeybee Search Algorithm (HSA), which is a hybrid algorithm combining swarm intelligence and evolutionary algorithm principles, and was previously designed for three-dimensional reconstruction. This heuristic inspired by the search for food of honeybees, and here adapted to the problem of object tracking using GPU parallel computing, is extended from the original proposal of HSA towards video processing. In this work, the normalized cross-correlation (NCC) criteria is used as the fitness function. Experiments using 314 video sequences of the ALOV benchmark provides evidence about the quality regarding tracking accuracy and processing time. Also, according to these experiments, the proposed methodology is robust to high levels of Gaussian noise added to the image frames, and this confirms that the accuracy of the original NCC is preserved with the advantage of acceleration, offering the possibility of accelerating latest trackers using this methodology.
Resumen-La calidad de los programas de software (SW) es considerada cuando éstos se realizan bajo estrictas metodologías y siguiendo estándares que intentan reducir la probabilidad de presentar defectos. La obtención de métricas de SW es un método útil para minimizar dicha probabilidad. Para evaluar la calidad de un programa de SW, uno de los indicadores más importantes es la mantenibilidad, la cual se puede medir mediante la obtención de un conjunto de métricas. La mantenibilidad es la facilidad con la que un sistema de SW puede ser modificado y es un atributo que afecta de manera crucial al costo de desarrollo del mismo. La literatura muestra estudios sobre mantenibilidad y la alteración de este parámetro cuando los programas evolucionan. Este trabajo muestra los resultados de analizar 315 programas realizados por estudiantes universitarios de carreras en Ingeniería en Computación e Informática y la evolución que la mantenibilidad y otras métricas básicas presentan en función del progreso en la formación académica de sus autores.Palabras clave-Mantenibilidad, Ingeniería de software, estudio universitario I. INTRODUCCIÓNEn la actualidad las empresas han estado demandado sistemas de software que sean apegados a la mayoría de los requerimientos de los usuarios y a los estándares de calidad, esto ha incrementado el tamaño de los sistemas de software y su complejidad. Este hecho hace que los sistemas se vuelvan difíciles de mantener y por ende incrementar costos. En este sentido, el glosario de términos del estándar de la IEEE de ingeniería de software define mantenibilidad como [1]:"La facilidad con la cual un sistema de software o componente puede ser modificado para corregir fallas; mejorar su desempeño u otros atributos; o adaptarse a cambios del ambiente."La mantenibilidad es un factor altamente significativo en el éxito económico del producto de software. Además es un atributo importante de calidad, pero es difícil de estimar, ya que involucra predicciones acerca de cambios futuros. Por lo que si el modelo de predicciones de mantenibilidad es exacto, entonces el diseño de correcciones podría ser adoptado y ayudar a reducir esfuerzos futuros de mantenibilidad [2]. En esta dirección, es de suma importancia dirigir los esfuerzos en la formación de estudiantes universitarios cuyo rol será el de desarrolladores de software. De forma que al concluir los estudios los ingenieros de software sean capaces de realizar sistemas de software o programas informáticos de calidad bajo estrictas metodologías y siguiendo estándares que intentan minimizar la probabilidad de presentar defectos [3][4]. Estos lineamientos se deben seguir en todas las etapas de desarrollo de software (ingeniería de requerimientos, diseño, programación, pruebas, etc.). Por lo que el objetivo del ingeniero de software es producir programas funcionales (que hagan lo que se supone deben hacer), correctos (sin defectos) y mantenibles (susceptibles de evolucionar ante los cambios manteniendo las dos cualidades anteriores) y que cumplan con los más altos e...
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.