Optical Camera Communication: Fundamentals