There are different ways for estimating the efforts for the automation project. You can define your efforts based on classical SDLC way. Here you estimate the time according to phases of SDLC. Automation is a kind of development activity.
Other way which I know considers the following points
1. Time taken for tool evaluation and feasibility
2. Time taken for development of a utility function * number of functions
3. Total number of test cases/steps divided by test cases /steps that you can automate in a single day.
Sum all above days and you will get a rough idea of how many days will be needed to automate the application.
1. What tool and how much in-house expertise of that tool?
2. The intended automation approach. Whether record/replay, or using automation frameworks such as data driven or key word driven etc.
3. Automating existing test cases or creating everything from scratch? If the former, the quality/detail of those test cases.
The answers to these questions drive the estimation process.
No estimate can be made until you have the answers!
One main thing can be said, estimation for automation should never be derived from manual test execution metrics!