The idea I have to try to limit the false triggers:
1) When the PIR triggers (because it sensed moving heat), have the app take 3-6 pictures in a row (like once a second)
2) Create or find a routine that compares two images and generates a number representing how different the two images are from one another (0=no difference, the higher the value, the more the difference).
3) Compare each image to the next.
4) If the formula comes back with close to "0" for the difference between the images (or less then some value that you determined), then that would mean there was no significant motion in the images, so ignore the PIR trigger event and do NOT email any images.
5) However, if the formula returns numbers that are higher then some threshold amount you set, then email the pictures because that would mean that; A) The PIR detected moving heat, and B) the formula confirmed it was valid motion and not just wind.