Using a motor and motion sensor to follow movement?

Looking for guidance. New to arduino, wanting to create some halloween decorations and need to have a motion sensor cause a dolls head to move due to motion. Also want to leverage this for camera panning in the future. Does it matter what type of motor or boards? Looking for some guidance to get started. All help is appreciated. Thank you in advance.

By following movement I am simply assuming you want the head to turn to where-ever there was most recently a movement of an object. I am assuming you don't want it to try to track people in the room via any kind of image recognition, this latter would need a camera connected to something like a raspberry pi to run image recognition software then send commands down to and arduino to control a servo. The former could perhaps be done by mounting a distance measuring range-finder sensor such as a HC-SR04 or a laser equivalent VL53L0X (both with ranges a bit over a metre) on some kind of rotating turret, this turret would rotate fairly fast (perhaps once a second or so) and would take a range reading every (for example) 5 degrees. It would probably be best to measure those 5 degree positions by having the rotating turret trip a microswitch and the arduino consult the rangefinder for a distance every time the switch was tripped, the alternative would be trying to have the arduino consult the sensor a known time apart, but the motor driving the turret might not have a reliable enough rotation speed for such a time triggered sensing method to consistently take readings in the same places. To avoid needing slip-rings for connection to the rangefinder you'd probably want the turret to swing to +170 degrees then -170, then back to +170 via 0. The arduino would know how many readings would be taken during each sweep and would detect whether the readings changed between subsequent sweeps of the turret. It would store the readings in an array of however many different angles it had readings at (68 positions for my 5 degree measurements, -170 to +170 sweep example), best to keep the readings as byte values rather than ints and definitely not as floats hence ensuring plenty of memeory space to store the 68 readings in. When the program on the arduino saw that a distance reading had changed by, say, more than 20% it would turn the doll's head (which would be on a separate turret to the rangefinder and would be controleld by a separate servo) to face the direction where there had been a change in reading. If there had been changes of more than 20% in more than 1 of the 68 readings then you would have to decide whether to turn the head to face the one which had changed by the greatest percentage or the one which had the closest range reading. Good luck.