{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,2]],"date-time":"2026-07-02T16:22:53Z","timestamp":1783009373994,"version":"3.54.5"},"reference-count":33,"publisher":"Oxford University Press (OUP)","issue":"4","license":[{"start":{"date-parts":[[2020,8,21]],"date-time":"2020-08-21T00:00:00Z","timestamp":1597968000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/academic.oup.com\/journals\/pages\/open_access\/funder_policies\/chorus\/standard_publication_model"}],"funder":[{"DOI":"10.13039\/501100003329","name":"Ministerio de Econom\u00eda y Competitividad","doi-asserted-by":"publisher","award":["TIN2015-65316-P, TEC2012-38939-C03-02"],"award-info":[{"award-number":["TIN2015-65316-P, TEC2012-38939-C03-02"]}],"id":[{"id":"10.13039\/501100003329","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100002943","name":"Departament d\u2019Innovaci\u00f3, Universitats i Empresa de la Generalitat de Catalunya","doi-asserted-by":"crossref","award":["2014-SGR-1051"],"award-info":[{"award-number":["2014-SGR-1051"]}],"id":[{"id":"10.13039\/501100002943","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100000780","name":"European Commission","doi-asserted-by":"publisher","award":["H2020-ICT-644312"],"award-info":[{"award-number":["H2020-ICT-644312"]}],"id":[{"id":"10.13039\/501100000780","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2022,4,19]]},"abstract":"<jats:title>Abstract<\/jats:title>\n               <jats:p>In the context of object detection, sliding-window classifiers and single-shot convolutional neural network (CNN) meta-architectures typically yield multiple overlapping candidate windows with similar high scores around the true location of a particular object. Non-maximum suppression (NMS) is the process of selecting a single representative candidate within this cluster of detections, so as to obtain a unique detection per object appearing on a given picture. In this paper, we present a highly scalable NMS algorithm for embedded graphics processing unit (GPU) architectures that is designed from scratch to handle workloads featuring thousands of simultaneous detections on a given picture. Our kernels are directly applicable to other sequential NMS algorithms such as FeatureNMS, Soft-NMS or AdaptiveNMS that share the inner workings of the classic greedy NMS method. The obtained performance results show that our parallel NMS algorithm is capable of clustering 1024 simultaneous detected objects per frame in roughly 1 ms on both Tegra X1 and Tegra X2 on-die GPUs, while taking 2 ms on Tegra K1. Furthermore, our proposed parallel greedy NMS algorithm yields a 14\u201340x speed up when compared to state-of-the-art NMS methods that require learning a CNN from annotated data.<\/jats:p>","DOI":"10.1093\/comjnl\/bxaa108","type":"journal-article","created":{"date-parts":[[2020,7,22]],"date-time":"2020-07-22T19:16:23Z","timestamp":1595445383000},"page":"773-787","source":"Crossref","is-referenced-by-count":6,"title":["Work-Efficient Parallel Non-Maximum Suppression Kernels"],"prefix":"10.1093","volume":"65","author":[{"given":"David","family":"Oro","sequence":"first","affiliation":[{"name":"Universitat Polit\u00e8cnica de Catalunya, C. Jordi Girona, 1-3, 08034, Barcelona, Spain"},{"name":"Herta Security, C. Pau Claris, 165 4B, 08037, Barcelona, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Carles","family":"Fern\u00e1ndez","sequence":"additional","affiliation":[{"name":"Herta Security, C. Pau Claris, 165 4B, 08037, Barcelona, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Xavier","family":"Martorell","sequence":"additional","affiliation":[{"name":"Universitat Polit\u00e8cnica de Catalunya, C. Jordi Girona, 1-3, 08034, Barcelona, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Javier","family":"Hernando","sequence":"additional","affiliation":[{"name":"Universitat Polit\u00e8cnica de Catalunya, C. Jordi Girona, 1-3, 08034, Barcelona, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"286","published-online":{"date-parts":[[2020,8,21]]},"reference":[{"key":"2022041811431557200_ref1","doi-asserted-by":"crossref","DOI":"10.5244\/C.29.32","article-title":"Real-Time Pedestrian Detection With Deep Network Cascades","volume-title":"Proc. British Machine Vision Conference","author":"Angelova","year":"2015"},{"key":"2022041811431557200_ref2","doi-asserted-by":"crossref","DOI":"10.1109\/CVPR.2015.7299170","article-title":"A Convolutional Neural Network Cascade for Face Detection","volume-title":"Proc. IEEE Conf. on Computer Vision and Pattern Recognition","author":"Li","year":"2015"},{"key":"2022041811431557200_ref3","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-319-46448-0_2","article-title":"SSD: Single Shot Multibox Detector","volume-title":"European Conf. on Computer Vision","author":"Liu","year":"2016"},{"key":"2022041811431557200_ref4","doi-asserted-by":"crossref","first-page":"1499","DOI":"10.1109\/LSP.2016.2603342","article-title":"Joint face detection and alignment using multitask cascaded convolutional networks","volume":"23","author":"Zhang","year":"2016","journal-title":"IEEE Signal Process. Lett."},{"key":"2022041811431557200_ref5","doi-asserted-by":"crossref","DOI":"10.1109\/IPDPSW.2018.00091","article-title":"NVIDIA Tensor Core Programmability, Performance and Precision","volume-title":"Proc. IEEE Int. Parallel and Distributed Processing Symposium Workshops","author":"Markidis","year":"2018"},{"key":"2022041811431557200_ref6","volume-title":"NVIDIA Jetson Xavier","author":"Corp","year":"2019"},{"key":"2022041811431557200_ref7","volume-title":"NVIDIA Architectures","author":"Corp","year":"2020"},{"key":"2022041811431557200_ref8","volume-title":"Autonomous Vehicle Implementation Predictions","author":"Litman","year":"2017"},{"key":"2022041811431557200_ref9","doi-asserted-by":"crossref","DOI":"10.1109\/ICASSP.2016.7471831","article-title":"Work-efficient Parallel Non-maximum Suppression for Embedded GPU Architectures","volume-title":"IEEE Int. Conf. on Acoustics, Speech and Signal Processing","author":"Oro","year":"2016"},{"key":"2022041811431557200_ref10","first-page":"1870","article-title":"A fast and power-efficient hardware architecture for non-maximum suppression","volume":"66","author":"Shi","year":"2019","journal-title":"IEEE Transactions on Circuits and Systems II: Express Briefs"},{"key":"2022041811431557200_ref11","doi-asserted-by":"crossref","first-page":"149","DOI":"10.1007\/978-0-387-21579-2_9","article-title":"The boosting approach to machine learning: An overview","volume-title":"Nonlinear Estimation and Classification","author":"Schapire","year":"2003"},{"key":"2022041811431557200_ref12","doi-asserted-by":"crossref","first-page":"273","DOI":"10.1007\/BF00994018","article-title":"Support vector machine","volume":"20","author":"Cortes","year":"1995","journal-title":"Mach. Learn."},{"key":"2022041811431557200_ref13","doi-asserted-by":"crossref","DOI":"10.1109\/ICCV.2017.593","article-title":"Soft-NMS\u2013Improving Object Detection With One Line of Code","volume-title":"Proc. IEEE Int. Conf. on Computer Vision","author":"Bodla","year":"2017"},{"key":"2022041811431557200_ref14","doi-asserted-by":"crossref","DOI":"10.1109\/CVPR.2019.00662","article-title":"Adaptive NMS: Refining Pedestrian Detection in a Crowd","volume-title":"Proc. IEEE Conf. on Computer Vision and Pattern Recognition","author":"Liu","year":"2019"},{"key":"2022041811431557200_ref15","doi-asserted-by":"crossref","article-title":"FeatureNMS: Non-maximum suppression by learning feature Embeddings","author":"Salscheider","DOI":"10.1109\/ICPR48806.2021.9412930"},{"key":"2022041811431557200_ref16","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-540-85836-2_16","article-title":"Efficient K-means Clustering Using Accelerated Graphics Processors","volume-title":"Data Warehousing and Knowledge Discovery","author":"Shalom","year":"2008"},{"key":"2022041811431557200_ref17","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-642-02172-5_17","article-title":"Mean Shift Parallel Tracking on GPU","volume-title":"Pattern Recognition and Image Analysis","author":"Li","year":"2009"},{"key":"2022041811431557200_ref18","article-title":"Non-maximum Suppression for Object Detection by Passing Messages Between Windows","volume-title":"Asian Conf. on Computer Vision","author":"Rothe","year":"2014"},{"key":"2022041811431557200_ref19","doi-asserted-by":"crossref","DOI":"10.1109\/CVPR.2017.685","article-title":"Learning Non-Maximum Suppression","volume-title":"IEEE Conf. on Computer Vision and Pattern Recognition","author":"Hosang","year":"2017"},{"key":"2022041811431557200_ref20","doi-asserted-by":"crossref","DOI":"10.1109\/AVSS.2010.89","article-title":"PETS2010 and PETS2009 Evaluation of Results Using Individual Ground Truthed Single Views","volume-title":"IEEE Int. Conf. on Advanced Video and Signal Based Surveillance","author":"Ellis","year":"2010"},{"key":"2022041811431557200_ref21","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-319-10602-1_48","article-title":"Microsoft COCO: Common Objects in Context","volume-title":"European Conf. on Computer Vision","author":"Lin","year":"2014"},{"key":"2022041811431557200_ref22","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-030-22796-8_9","article-title":"Graph Convolution and Self Attention Based Non-maximum Suppression","volume-title":"Int. Symposium on Neural Networks","author":"Qiu","year":"2019"},{"key":"2022041811431557200_ref23","doi-asserted-by":"crossref","first-page":"303","DOI":"10.1007\/s11263-009-0275-4","article-title":"The Pascal visual object classes (VOC) challenge","volume":"88","author":"Everingham","year":"2010","journal-title":"Int. J. Comput. Vis."},{"key":"2022041811431557200_ref24","doi-asserted-by":"crossref","first-page":"105478","DOI":"10.1016\/j.asoc.2019.05.005","article-title":"Improved non-maximum suppression for object detection using harmony search algorithm","volume":"81","author":"Song","year":"2019","journal-title":"Appl. Soft Comput."},{"key":"2022041811431557200_ref25","article-title":"CrowdHuman: A benchmark for detecting human in a crowd","author":"Shao","year":"2018"},{"key":"2022041811431557200_ref26","volume-title":"A Survey of Parallel Algorithms for Shared-Memory Machines","author":"Karp","year":"1988"},{"key":"2022041811431557200_ref27","doi-asserted-by":"crossref","DOI":"10.1145\/800133.804339","article-title":"Parallelism in Random Access Machines","volume-title":"Proc. 10th Annual ACM Symposium on Theory of Computing","author":"Fortune","year":"1978"},{"key":"2022041811431557200_ref28","volume-title":"Linux for Tegra (L4T)","author":"Corp","year":"2019"},{"key":"2022041811431557200_ref29","volume-title":"Arm big.LITTLE","author":"Ltd","year":"2019"},{"key":"2022041811431557200_ref30","article-title":"An empirical evaluation of deep learning on highway driving","author":"Huval","year":"2015"},{"key":"2022041811431557200_ref31","doi-asserted-by":"crossref","DOI":"10.1109\/CVPR.2014.81","article-title":"Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation","volume-title":"Proc. IEEE Conf. on Computer Vision and Pattern Recognition","author":"Girshick","year":"2014"},{"key":"2022041811431557200_ref32","doi-asserted-by":"crossref","DOI":"10.1145\/2671188.2749408","article-title":"Multi-view Face Detection Using Deep Convolutional Neural Networks","volume-title":"Proc. of the 5th ACM on Int. Conf. on Multimedia Retrieval","author":"Farfade","year":"2015"},{"key":"2022041811431557200_ref33","doi-asserted-by":"crossref","DOI":"10.1109\/BTAS.2017.8272675","article-title":"Faceboxes: A CPU Real-Time Face Detector with High Accuracy","volume-title":"Proc. of the IEEE Int. Joint Conf. on Biometrics","author":"Zhang","year":"2017"}],"container-title":["The Computer Journal"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/academic.oup.com\/comjnl\/article-pdf\/65\/4\/773\/43377591\/bxaa108.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/academic.oup.com\/comjnl\/article-pdf\/65\/4\/773\/43377591\/bxaa108.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,4,18]],"date-time":"2022-04-18T11:44:40Z","timestamp":1650282280000},"score":1,"resource":{"primary":{"URL":"https:\/\/academic.oup.com\/comjnl\/article\/65\/4\/773\/5894719"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,8,21]]},"references-count":33,"journal-issue":{"issue":"4","published-online":{"date-parts":[[2020,8,21]]},"published-print":{"date-parts":[[2022,4,19]]}},"URL":"https:\/\/doi.org\/10.1093\/comjnl\/bxaa108","relation":{},"ISSN":["0010-4620","1460-2067"],"issn-type":[{"value":"0010-4620","type":"print"},{"value":"1460-2067","type":"electronic"}],"subject":[],"published-other":{"date-parts":[[2022,4]]},"published":{"date-parts":[[2020,8,21]]}}}