Prior to SCCM 2012 SP1 there was no way to hide a Task Sequence from the Software Center, therefore all Task Sequences are available for the end user to install.
There is a work around that will remove the TS from the Software Center but keep it available as a option during the OSD process.
To do this right click any TS that you want to hide and choose Properties.
Click the Advanced tab and select ‘Run only on the specified client platforms’. Select an O/S that you are not deploying the image to.
This has been addressed in SCCM 2012 SP1. See here.