A system for characterizing a moving object, the system comprising: a signal transmitter for transmitting transmitted signals into a region; a receiver for receiving reflected signals generated by reflection of the transmitted signals from a plurality of points on the moving target and generating receive signals indicative of the reflected radar signals, the plurality of points defining a cluster of points for each of a plurality of scans; and a processor receiving the receive signals and performing a cluster trajectory orientation process associated with the clusters of points to estimate the heading of the moving target, characterized in that the cluster trajectory orientation process comprises: generating a position data matrix including coordinates of each point in the corresponding cluster of points; generating a major eigenvector by performing a principal component analysis on the position data matrix; computing an initial average coordinate set as an average of the coordinates in the position data matrix corresponding to an earliest one of the plurality of scans; computing a final average coordinate set as an average of the coordinates in the position data matrix corresponding to a latest one of the plurality of scans; defining a first heading estimate vector extending from the initial average coordinate set to the final average coordinate set; comparing the first heading estimate vector to the major eigenvector of the position data matrix to identify a selected direction of the major eigenvector that most closely matches a heading estimate vector direction of the first heading estimate vector; and generating as a cluster trajectory orientation heading estimate the selected direction of the major eigenvector. a signal transmitter for transmitting transmitted signals into a region; a receiver for receiving reflected signals generated by reflection of the transmitted signals from a plurality of points on the moving target and generating receive signals indicative of the reflected radar signals, the plurality of points defining a cluster of points for each of a plurality of scans; and a processor receiving the receive signals and performing a cluster trajectory orientation process associated with the clusters of points to estimate the heading of the moving target, characterized in that the cluster trajectory orientation process comprises: generating a position data matrix including coordinates of each point in the corresponding cluster of points; generating a major eigenvector by performing a principal component analysis on the position data matrix; computing an initial average coordinate set as an average of the coordinates in the position data matrix corresponding to an earliest one of the plurality of scans; computing a final average coordinate set as an average of the coordinates in the position data matrix corresponding to a latest one of the plurality of scans; defining a first heading estimate vector extending from the initial average coordinate set to the final average coordinate set; comparing the first heading estimate vector to the major eigenvector of the position data matrix to identify a selected direction of the major eigenvector that most closely matches a heading estimate vector direction of the first heading estimate vector; and generating as a cluster trajectory orientation heading estimate the selected direction of the major eigenvector. generating a position data matrix including coordinates of each point in the corresponding cluster of points; generating a major eigenvector by performing a principal component analysis on the position data matrix; computing an initial average coordinate set as an average of the coordinates in the position data matrix corresponding to an earliest one of the plurality of scans; computing a final average coordinate set as an average of the coordinates in the position data matrix corresponding to a latest one of the plurality of scans; defining a first heading estimate vector extending from the initial average coordinate set to the final average coordinate set; comparing the first heading estimate vector to the major eigenvector of the position data matrix to identify a selected direction of the major eigenvector that most closely matches a heading estimate vector direction of the first heading estimate vector; and generating as a cluster trajectory orientation heading estimate the selected direction of the major eigenvector.