Array checking should generally be your first test for collisions in tile based gaming, however this can be very hit and miss if the background needs to have non-squarish tiles (eg. slopes), but even then still use the tile data array and work out positioning for where the character should be in relation to the image (climbing/descending slope or even to detect if player has collided with ground/object). If it's just walls etc that's the way to go.
I wouldn't advise using sprites as well as Polyvectors for drawing the landscape - stick to polys only and make enemies and pick-ups sprites if you need pixel perfect collision detection.