Main Content

Keypoint Detection

Detect keypoints in objects using convolutional neural networks (CNNs)

Keypoint detection, also known as keypoint localization or landmark detection, is a computer vision task that involves identifying and localizing specific points of interest in an image. In computer vision tasks, keypoints represent human body joints, facial landmarks, or salient points on objects.

Keypoint detection provides essential information about the location, pose, and structure of objects or entities within an image, playing a critical role in computer vision applications such as these.

  • Pose estimation

  • Object detection and tracking

  • Facial analysis

  • Augmented reality

Keypoint detection on a group of people

Deep learning-based approaches to keypoint detection in objects use convolutional neural networks (CNNs), such as a high resolution deep learning network (HRNet). You can train a custom object keypoint detector, or use transfer learning to modify a pretrained keypoint detector and fine-tune it for your application. For more information on transfer learning, see Deep Learning: Transfer Learning in 10 lines of MATLAB Code.

Convolutional neural networks require a Deep Learning Toolbox™ license. You can perform GPU-based training and prediction on a CUDA®-capable GPU. Use of a GPU is recommended and requires a Parallel Computing Toolbox™ license. For more information, see Computer Vision Toolbox Preferences and Parallel Computing Support in MathWorks Products (Parallel Computing Toolbox).


Image LabelerLabel images for computer vision applications
Video LabelerLabel video for computer vision applications
Deep Network DesignerDesign and visualize deep learning networks


expand all

hrnetObjectKeypointDetectorCreate object keypoint detector using HRNet deep learning network (Since R2023b)
trainHRNetObjectKeypointDetectorTrain HRNet object keypoint detector (Since R2024a)
insertObjectKeypointsInsert object keypoints in image (Since R2023b)
loadHRNETObjectKeypointDetectorLoad HRNet object keypoint detector model for code generation (Since R2023b)


  • Getting Started with HRNet

    Learn high resolution network (HRNet) basics.

  • Local Feature Detection and Extraction

    Learn the benefits and applications of local feature detection and extraction.

  • Point Feature Types

    Choose functions that return and accept points objects for several types of features.

  • Deep Learning in MATLAB (Deep Learning Toolbox)

    Discover deep learning capabilities in MATLAB® using convolutional neural networks for classification and regression, including pretrained networks and transfer learning, and training on GPUs, CPUs, clusters, and clouds.

  • List of Deep Learning Layers (Deep Learning Toolbox)

    Discover all the deep learning layers in MATLAB.

  • Pretrained Deep Neural Networks (Deep Learning Toolbox)

    Learn how to download and use pretrained convolutional neural networks for classification, transfer learning and feature extraction.