The short answer to your question is that yes, you can estimate power as a function of rider, speed and resistance. For example, Strava has an algorithm that will estimate power. And, the iBike computer (now marketed by Velocomp) derives power from speed and estimated resistance.
The problem is the accuracy of the estimate. The reason there is a wide variance in accuracy is because it is extremely difficult (actually, it's impossible) to estimate resistance. The logic of deriving power from speed is that power is required to produce speed given total resistance, so if I know total resistance then I can impute the amount of power required to produce the speed. And, that's true because it's simple physics. But, here's the rub. Total resistance includes some variables that are relatively constant, such as the weight of the rider and bike, rolling resistance from the tires, frontal area resistance due to the rider's position on the bike, and the frontal area resistance of the bike. But, then you have variables that change constantly, such as grade and wind. The truth is that road gradient changes constantly and wind direction and velocity changes constantly. So, no matter what values you use, they are only accurate some of the time. So, the bottom line is you should use any estimates of power not based on an actual power meter with the knowledge that the accuracy of the estimate is subject to a large variance.
If you want to play with the assumptions and estimate power based on assumptions, here's a site where you can do that: http://www.analyticcycling.com/