Putting values from grip auto generated code into network tables from rpi to roborio

We’re trying to adapt the sample project included in the frc raspberry pi image for vision processing. We replaced their sample vision pipeline with an auto-generated grip pipeline in java to run on the rpi. We are now trying to take the values from the contours report and put them in network tables to send to the rio. How do we create a new table in network tables? All of the examples of network tables seemed to show getting values from an existing table instead of creating a new one. What values should we be sending to the rio and how do we get them? Thanks so much! Here’s the code we have right now but we don’t know if it’s right:

NetworkTableInstance ntinst = NetworkTableInstance.getDefault();
if (server) {
System.out.println(“Setting up NetworkTables server”);
ntinst.startServer();
} else {
System.out.println("Setting up NetworkTables client for team " + team);
ntinst.startClientTeam(team);
}
NetworkTable table = ntinst.getTable(“GRIP”);

// start image processing on camera 0 if present
if (cameras.size() >= 1) {
  VisionThread visionThread = new VisionThread(cameras.get(0),
          new GripPipeline(), pipeline -> {
            if (!pipeline.filterContoursOutput().isEmpty()) {
              Rect r = Imgproc.boundingRect(pipeline.filterContoursOutput().get(0));
              synchronized (imgLock) {
                  centerX = r.x + (r.width / 2);
                  table.putNumber("CenterX",CenterX);
              }
  });
  visionThread.start();
}

getTable() will create the table if it does not already exist