What is the camera_rgb_optical_frame? [..] I'd imagine it is the image sensor [..]
Well, it's not the sensor, but the TF frame which is supposed to represent the location of the sensor which captures RGB images.
Or: it's the TF frame which represents what the camera's driver reports as being that location -- as an OEM camera driver might post-process a raw image and thereby change certain characteristics.
So it's not the location of the lens, as that's not typically where the sensor is.
To decompose the name:
camera
: indicates this is a frame inside of/related to a camera rgb
: this is a (plain) RGB camera/sensor (so not an IR or 3D/depth camera) optical
: the camera can have multiple frames, but this one is the location of the "optical sensor" frame
: well, this resource is a frame, a TF frame to be precise, hence the suffix
You'll see this frame name being used in many places which accept standardised TF configurations for cameras, both regular RGB (ie: 2D) and depth (ie: 3D) cameras. I've also seen it used for laser scanners (1D, 2D and 3D) and other optical-like sensors.
Variants of the frame exist, such as the camera_ir_optical_frame
(for cameras using structured light, or other sensors which have an IR sensor).
There are a couple of REPs which mention it, such as REP 103: Standard Units of Measure and Coordinate Conventions - Coordinate Frame Conventions - Suffix Frames and REP 119: Specification for TurtleBot Compatible Platforms. There is no single REP which standardises this though, afaict. The use of the frame is more by convention, and it's a de-facto standard within the ROS community.