Supondo que você tenha instalado as bibliotecas corretamente, o comando que você está usando para compilar o código através do terminal está errado. Eu tentei por mim mesmo, e não funciona! Tente o seguinte,
g++ canny.cpp -o canny 'pkg-config --cflags --libs opencv'
Esta linha deve funcionar bem. Por favor, experimente e nos avise.