Object reference not set to instance of an object?

I’m not sure why, but I keep on getting an error regarding to NullReferenceException in my script for a game that I’m working on. It keeps on referring to line 96 (or //KeyDisplay.sprite = Resources.Load (“pixel_key”) as Sprite;) I try to display a sprite on my UI whenever I walk to pick up a key. On that collision it should be updating the sprite on the UI after colliding with the key, but it just throws that exception out at me. Please help!

using UnityEngine;
using System.Collections;
using UnityEngine.UI;


public class Move : MonoBehaviour
{
	private SpriteRenderer spriteRenderer;
	public Sprite Character_Back, Character_Front, Character_Left, Character_Right, pixel_key;
	public float speed = 1.5f;
	public Vector2 tempSpeed;
	private int count;
	public Text amtOfKeys;
	public Image KeyDisplay;

	Animator animator;

	void Start ()
	{
		animator = GetComponent<Animator>();
		spriteRenderer = GetComponent<SpriteRenderer>();
		if (spriteRenderer.sprite == null)
			spriteRenderer.sprite = Character_Front;
		count = 0;
		amtOfKeys.text = "";
	}

	void Update ()
	{
		
		animator.SetBool("Up", false);
		animator.SetBool("Down", false);
		animator.SetBool("Left", false);
		animator.SetBool("Right", false);

		if (Input.GetKey (KeyCode.A)) 
		{
			transform.position += Vector3.left * speed * Time.deltaTime;
			animator.SetFloat ("X-Speed", -speed);
			tempSpeed.x = -speed;
		} 
		else if (Input.GetKey (KeyCode.D)) 
		{
			transform.position += Vector3.right * speed * Time.deltaTime;
			animator.SetFloat ("X-Speed", speed);
			tempSpeed.x = speed;
		}

		if (Input.GetKey (KeyCode.W))
		{
			transform.position += Vector3.up * speed * Time.deltaTime;
			animator.SetFloat ("Y-Speed", speed);
			tempSpeed.y = speed;
		}
		else if (Input.GetKey (KeyCode.S))
		{
			transform.position += Vector3.down * speed * Time.deltaTime;
			animator.SetFloat ("Y-Speed", -speed);
			tempSpeed.y = -speed;
		}

		if (tempSpeed.y > 0) 
		{
			animator.SetBool ("Up", true);
		} 
		else if (tempSpeed.y < 0) 
		{
			animator.SetBool ("Down", true);
		} 
		else if (tempSpeed.x > 0) 
		{
			animator.SetBool ("Right", true);
		} 
		else if (tempSpeed.x < 0) 
		{
			animator.SetBool ("Left", true);
		} 
		else 
		{
		}
	}

	void OnTriggerEnter2D(Collider2D other) 
	{
		if (other.gameObject.CompareTag("Key"))
		{
			other.gameObject.SetActive(false);
			count++;
			SetAmtOfKeys ();
		}
	}

	void SetAmtOfKeys()
	{
		amtOfKeys.text = "	Keys : " + count.ToString ();
		//KeyDisplay.sprite = Resources.Load<Sprite> ("pixel_key") as Sprite;
	}
}

You need to link your Image component to your script in the inspector. You can do this by dragging from the Image component to the KeyDisplay field in your script when viewing the script component in the inspector. If the Image is on another GameObject, you can drag the Image’s GameObject to the KeyDisplay field, or click the little menu icon next to the KeyDisplay field and select from all Images in your scene.