A German opera house has cancelled an opera featuring graphic Nazi imagery following a wave of public protests on opening night.