Python: Check if vertex is on camera field of view
import bpy
import bmesh
from mathutils import Vector
from bpy_extras.object_utils import world_to_camera_view

scene = bpy.context.scene
cam = bpy.data.objects['Camera']
obj = bpy.data.objects['Cube']
mesh = obj.data
mat_world = obj.matrix_world
cs, ce = cam.data.clip_start, cam.data.clip_end

assert obj.mode == "EDIT"
bm = bmesh.from_edit_mesh(mesh)

for v in bm.verts:
    co_ndc = world_to_camera_view(scene, cam, mat_world @ v.co)
    #check wether point is inside frustum
    if (0.0 &lt; co_ndc.x &lt; 1.0 and
        0.0 &lt; co_ndc.y &lt; 1.0 and
        cs &lt; co_ndc.z &lt;  ce):
        v.select = True
    else:
        v.select = False

bmesh.update_edit_mesh(mesh, False, False)