1. A computer implemented method for finding similar coronary angiograms in a database of coronary angiograms comprising: receiving, by a processor, angiography data for a coronary artery; processing, by the processor, the angiography data to identify one or more semantic features of the coronary artery, wherein the one or more semantic features comprise at least one of the following: a number of significant junctions in the coronary artery; a thickness of the coronary artery; a number of trifurcations in the coronary artery, a tortuosity of the coronary artery, a length of one or more segments of the coronary artery; and lumen variations across the coronary artery; identifying, by the processor, one or more nearest coronary angiograms for each of the one or more semantic features from the database of coronary angiograms; and receiving a disease attribute associated with each of the one or more nearest coronary angiograms.