i = Binarize@Import["https://i.sstatic.net/qofeF.png"]; id = ColorNegate@DeleteSmallComponents[ColorNegate@i, 10^4]; vertexI = SelectComponents[id, "Count", 10 < # < 100 &]; vertexpos = ComponentMeasurements[vertexI, "Centroid"][[All, 2]]; template = Subsets[Range@Length@vertexpos, {2}]; lines = Subsets[vertexpos, {2}]; t1 = Total@Flatten@ImageData@Binarize@id; p = Flatten@Position[ t1 - Total@Flatten@ImageData@Binarize@Show[id, Graphics[{Line[#]}]] & /@ lines, x_ /; x < 100]; Show[Graphics[{Red, Line[#]}] & /@ lines[[p]]]

Graph[Range@Length@vertexpos, UndirectedEdge @@@ template[[p]], VertexLabels -> "Name", ImagePadding -> 20, VertexCoordinates -> vertexpos]
