Is reading the database records from the Database using Stored Procedures
in NHibernate a good approach?
If you are hydrating data grids, no. While NHibernate will allow for this scenario, it is a poor use of NHibernate as NHibernate is not adding much value. Why take a dependency on NHibernate for basically nothing in return?
If you are hydrating objects, yes. NHibernate is at least serving a minimal purpose of mapping the results returned from the stored procedure to an object. You are taking a significant dependency for one tiny feature, but it's probably better than rolling your own solution.
The answer would basically be the same for any .NET ORM, assuming the ORM can hydrate objects based on the data returned by a stored procedure.