OK so I found a solution that worked for me when trying to get OpenCV to work with Python 3.9 on Windows 10.
This is a known issue for Windows versions past v2004.
In short, the version of NumPY that you need is v1.19.3:
pip uninstall numpy
pip install numpy==1.19.3
Or to do this in one command, use the --force-reinstall flag for pip:
pip install --force-reinstall numpy==1.19.3