Is there a difference between "innocent" and "not guilty"?
Not guilty is a verdict or formal finding by the legal system that a defendant is not culpable for the crime with which the defendant was charged.
If someone charges you with a certain crime, the judge/jury are there to decide whether you are guilty, or not guilty of the crime in question. Stating that you are innocent would technically generally speak about your life and personality in a way that you've never done anything bad in life. Not guilty, on the other hand, can and is used to express specifically what you are not guilty of, for example not guilty of killing my workmate.
Therefore, the following is technically correct:
Judge: How do you plead?
You: I'm not innocent, nobody is, but I'm not guilty of what I'm charged with.
From a lawyer's blog:
When I am interviewing potential clients, I hear on a regular basis that "I'm innocent". It goes in one ear and out the other with me. I don't care if you're innocent. I care if you are "Not Guilty". So what is the difference? If you are innocent, you are absolutely without fault in all aspects. You are a victim of a terrible injustice and everyone should give you their pity. Congratulations, you have it! But you still face all the consequences of being charged with a criminal offense. If you are not guilty, you perhaps did not do the crime, [or] there was no crime, [or] they arrested the wrong person, [or] they could not prove their case; any one or combination of the above can produce the "not guilty" verdict.