This document describes research on using the Expectation-Maximization (EM) algorithm to solve the problem of perfusion deconvolution in functional magnetic resonance imaging (fMRI). It aims to provide a comprehensive description of applying the EM algorithm to this problem, correct inaccuracies in prior work, implement the methods in software, and compare the results. The document introduces the perfusion model, discretization approaches, and existing singular value decomposition (SVD) solution. It then explains the general EM algorithm and provides an example application from medical imaging literature. The main body of work derives and implements an improved EM algorithm for perfusion deconvolution based on correcting assumptions made in prior applications of the method.