Guess I'm pretty late to the party, but I use something that has not been mentioned here. My documents contain a significant amount of very high quality images, so I make two copies of the image file with one low resolution jpg and one high resolution png. I rename the files such that they have the suffix LOWRES.jpg or HIGHRES.png (I use png because that's what the image making software exports to). And I made a macro in TeXstudio that switches between the two image files.
This is some of my images in my images folder of my tex document:

And in my tex document I would have something like \includegraphics[width=5cm]{methanalLOWRES.jph}
And the suffix would be changed by the macro below depending on whether I want to quickly compile a draft or compile to the best quality (which takes a significantly longer time). I use this in conjunction with \includeonly
and it has signficantly reduced the compilation time.
%SCRIPT
scope = editor.document().cursor(0, 0, -1);
if (editor.search("HIGHRES.png", "g") > 0) {
editor.replace("HIGHRES.png","g",scope,"LOWRES.jpg");
} else {
if (editor.search("LOWRES.jpg", "g") > 0) {
editor.replace("LOWRES.jpg","g",scope,"HIGHRES.png");
}
}
I added this as a script macro on TeXstudio, so I am unsure if it will work on TeXmaker or other LaTeX editors, but the script is fairly basic and you should be able to implement your own for your own situation.
EDIT:
I use this website to resize my images https://bulkresizephotos.com. I simply just make the width 800px, and it outputs a lower resolution jpg file which I download (and unzip if multiple files were submitted). I believe imagemagick can do something similar, but I have not looked into it.
I just saw YuppieNetworking's answer above, which is very similar to my answer, nonetheless I will keep my answer here should someone want to use the script
file.fmt
, so that subsequent compilations can quickly read in that file and start from there instead of going through all of thenewdefs
(tex.stackexchange.com/q/79493/107497 and many links therein).