There are a few different ways to add headrests to a bench seat, but it will depend largely on the type of vehicle that you are wanting to modify. Depending on your particular situation, you will likely have one of three options. You can purchase seat covers with built in headrests, modify the existing seat, or fabricate a new one.
There are a variety of seat covers on the market that include built-in headrests in the seat covers. These headrests can augment existing headrests or supply them independent of the seat. Which option is best for your vehicle will depend largely on the vehicle and if there are any existing headrests. If there are not, you will want to go with a seat cover which has the entire headrest built in.
Modifying a Seat
Many models of cars come with the same basic structures, but the trim level dictates whether or not headrests are included. Because the basic seat is of the same design and construction, many times the holes are there to insert a headrest, but are covered over with upholstery. If this is the case, simply purchase the correct headrests and punch a hole in the upholstery.
A shop that specializes in restoration would be able to modify a seat, or fabricate an entirely new one if your vehicle did not originally come with headrests, and the seat can not accommodate a headrest.