After spending more time than I would like to admit I finally got ImGui working with Ogre 2.1. I have only tried GL3+ so far so would have to play with it more for DX11.
I tried everything I could find on the forums (including PSOHelper) and I just could not get it working. So what I ended up doing was reading the ImGui docs more thoroughly and decided to use his method. I was worried that since it wasn't using Ogre directly that it might not work. I downloaded the GLEW opengl helper library and used the methods used in the ImGui examples. I then integrated that into a copy of the Imguimanager posted here on the forums but mainly as a framework to get things going quicker. In my small testing I don't see any negatives as far as frame rate etc but we will see.
That's also what I am doing for a small level editor that I started working on. I'm using ImGui for the menues and a few floating windows, and ImGuizmo for having a thing to manipulate 3D objects. I'm using a GLFW window and GLEW to load OpenGL functions. The OpenGL context is created by GLFW and passed to Ogre via "["externalGLContext"] " on the option when manually creating the Ogre window object.
To get ImGui to render, I'm sticking to just use the OpenGL render system. I've put a call to all the ImGui draws inside a RenderTargetListener. Probably not the best idea of the world, but it does work.