tl;dr I think your images are indexed OK, but you are simply not able to see all the images that Google has indexed.
i did search in google image search and counted the number of images. it was around only 500.
Curious, I see considerably more when performing a
site: search for your real site on Google Image search.
But there are more than 500 images in Google Image Search
When performing an initial
site: search there are indeed about 500 images returned (although I estimate that there are between 390 and 520 images). However, scroll to the end of the list, and there is a large button: "Show more results". Clicking that button and scrolling to the end (image lazy load) boosts this figure to between 1020 and 1360 images. (I'm counting the number of rows (approx 170) and multiplying by the min (6) and max (8) in each row - on quite a low-res screen.) All these images are 1200 x 1200 (Search tools > Show sizes).
If I then do the same
site: search, but this time pick "Search tools" > "Medium" then I get a completely new set of smaller images (Mostly 350 x 350, but some 640 x 480 and 480 x 360). Again, I estimate that there are between 1020 and 1360 images returned in this search.
So, from these two searches alone I can see that you must have at least 2500 images indexed.
Google Image Search does not return all images
But, rather importantly (as I mentioned in comments above), Google Image Search does not return all the indexed images anyway when doing a
site: search. There is a cut off (seemingly somewhere between 1020 and 1360 images). In the same way a
site: search on normal Web Search only returns the first 100 results (10 pages). Try a
site: search on any other big site (eg.
site:amazon.com) and you get similar results.
There's no way to accurately determine the number of indexed images using a Google
site: search, unless perhaps you don't have many images. This is by design and prevents you from pulling all the images/pages from a site using Google and examining their search status (which is "personal").
From where I'm sitting, your site images already look well indexed.
Also our site images are stored in 2 different paths
I don't think this really matters in terms of SEO. (Although it's perhaps more of an issue with client-side caching and bandwidth. And perhaps storage, if you are physically storing the same image in two separate places.)
img24.jpg is the same image but in two separate locations, Google will (or should) only return one of them in the search results. Does it really matter which one it returns? Which is all that a canonical
Link: HTTP response header would resolve. But I don't believe Google honours the
Link: header at the current time with regards to Image Search. Reference:
Google Search Console Help - Specify a canonical link in your HTTP header