Bear with me as I'm not familiar with this part of the Sphinx codebase, but those messages look to me more like internal messages rather than anything an end-user would see. A quick inspection of the code that calls this function (add_refcount_annotations), suggests to me those results are ignored anyway (e.g. sphinx/environment.py: app.emit('doctree-read' ...).
Why do you want (or need?) these specific messages to be translatable?
Great! I stand educated. As is often the case, I should have run the code first, rather than trying to read it alone.
I'll suggest a minor change below: rather than use two-ifs, do it in one if-elif-else branch. This elides the need to build the string in two parts, only calls gettext once, and also makes plainer the final structure of message.
Either way, Takayuki Shimizukawa, you will probably have a greater interaction with this than myself. I'll step out of this conversation.