If I hear a G, B, B flat or E played on a piano or string instrument, I can (most of the time) identify the Note. Whenever I hear a G, I think of Holst's Mars or Tchaikovsky's Nutcracker march, when I hear a B flat, I think of Chopin's Nocturne Op. 9 No.2, and so on, however I am a lot less accurate when the note is a 2+ Octaves above / below.
I can also, with almost 100% accuracy tell if a note is a white or black key on a piano (or stringed instrument)
I can't (at all) identify chords.
I don't have perfect relative pitch, I can identify perfect fourths & fifths, octaves, major thirds and major sixths with almost 100% accuracy, but with most other intervals I am not always sure if its a major or minor.
I played piano since I was 6 and recently started learning violin
Do I have actual perfect pitch, or can I train my hearing to achieve perfect pitch, or do I just have a very good pitch memory?