If I have an object assigned as public. when a user from mumbai region access the object. From which region the object gets downloaded?
The object will be served from S3 in the region which you created the bucket. So – if you created the bucket in the us-east-1 region, a user accessing the object via the internet will download it from the us-east-1 region. By default, any object you upload to S3 in a specific region will stay in that region, unless you move it (through Cross Region Replication, etc). Have a look at this page from AWS for a good summary: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html
If you want the object to be served from AWS infrastructure closest to where the user is, no matter where the actual object bucket resides, you need to make use of CloudFont as AWS’s Content Distribution Network. AWS has a good blog post on this here: https://aws.amazon.com/blogs/networking-and-content-delivery/amazon-s3-amazon-cloudfront-a-match-made-in-the-cloud/ if you want to do more reading!