Cryo-electron microscopy (cryo-EM) tomography is a powerful tool for in situ structure determination. However, this method requires the acquisition of tilt series, and its time consuming throughput of acquiring tilt series severely slows determination of in situ structures. By treating the electron densities of non-target protein as non-Gaussian distributed noise, we developed a new target function that greatly improves the efficiency of the recognition of the target protein in a single cryo-EM image without acquiring tilt series. Moreover, we developed a sorting function that effectively eliminates the false positive detection, which not only improves the resolution during the subsequent structure refinement procedure but also allows using homolog proteins as models to recognize the target protein. Together, we developed an in situ single particle analysis (isSPA) method. Our isSPA method was successfully applied to solve structures of glycoproteins on the surface of a non-icosahedral virus and Rubisco inside the carboxysome. The cryo-EM data from both samples were collected within 24 hours, thus allowing fast and simple structural determination in situ.