Method for determining a subjects respiratory pattern from a video: receiving a video of a subject (the video comprises frames, and a region of interest of the subject in the video images comprises pixels); generating time-series signals whose samples are pixel values in the region of interest; extracting features from the time-series signals and forming feature vectors; clustering the feature vectors; averaging in a temporal direction the time-series signals corresponding to pixels represented by the feature vectors in each cluster to obtain a representative signal for each cluster; selecting one of the clusters; determining the subjects respiratory pattern based on the selected clusters representative signal. Results may be displayed. Video camera may be colour, monochrome, infra-red, multispectral, hyperspectral or a hybrid. Picture elements may be chosen from an imaging channel and may be grouped and spatially or amplitude filtered. Feature vectors may be clustered according to temporal alignment or orientation. Independent component analysis (ICA) or non-negative matrix factorisation (NMF) may be used. Power spectral density of NMF or ICA channels may be computed and spectrally compacted. An alert may be raised if respiration rate is not in a desired range. Video may be streamed and method may be real-time.