Answers.Body: <p>Since this a classification problem you will use a CNN preferably. Then you need to fix an architecture of the CNN like VGGNet or Resnet or Le-net. You can find details on architectures here- <a href="https://towardsdatascience.com/neural-network-architectures-156e5bad51ba" rel="nofollow noreferrer">Neural Network Architecures</a>. As a beginner you can use VGG 16. You can read about the architecure here- <a href="https://medium.com/towards-artificial-intelligence/the-architecture-and-implementation-of-vgg-16-b050e5a5920b" rel="nofollow noreferrer">Medium.com blog on VGG 16</a>.</p>
  <blockquote>
  <p>which tools/tutorials i should look at for this classification task?</p>
  </blockquote>
  <p>Tools that you can use:</p>
  <ol>
  <li>A python IDE like PyCharm or Jupyter Notebook</li>
  <li>Keras and Tensorflow packages</li>
  </ol>
  <p>Since, deep learning requires lot of training dataset and demands huge computation power, you can opt for cloud computing platforms like Google Colab or Azure to run your code on, unless you have enough GPU power on your local machine. The above tools are if you want to code yourself. If you want to use GUI(and not write code) Azure Machine Learning Studio is a starting point. Matlab Deep Learning toolbox also provides an excellent GUI with pre trained models on above architectures. However, if you write code on Matlab then you have to ensure your target GPU is NVIDIA as Matlab(Parallel Processing Toolbox, which supports doing computations on GPU) supports CUDA only. It won't work with AMD GPU.</p>
  <p>If you want to opt to write code, you can find a step by step implementation on dogs vs cats classification here- <a href="https://towardsdatascience.com/step-by-step-vgg16-implementation-in-keras-for-beginners-a833c686ae6c" rel="nofollow noreferrer">Dogs vs Cats classification</a>.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-10-13T21:34:29.040Z
Answers.Text: @Howard welcome to AI SE; if the answer resolved your issue, kindly accept it - see [What should I do when someone answers my question?](https://ai.stackexchange.com/help/someone-answers)
Answers.UserDisplayName: desertnaut
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-10-15T02:47:41.460Z
Answers.Text: i think it's not fully answered yet, i don't know how to classify the existing pictures as "the person is inside it". I will post my solution when it's done.
Answers.UserDisplayName: Howard
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-10-15T03:20:46.910Z
Answers.Text: @Howard for simple classification you have to label the images with person inside it as 1 and the images where person is not inside it as 0 amd feed it into a CNN with some architecture as mentioned above. The learnable filters will automatically do the job of extracting features that will decide the classification output. This is a basic classification problem based approach. If you are talking about "finding the location of the person" that comes under segmentation and it would require different techniques.
Answers.UserDisplayName: Prasanjit Rath
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-10-12T19:12:57.823Z
Answers.LastActivityDate: 2020-10-12T19:12:57.823Z
Answers.UserDisplayName: Prasanjit Rath
Body: <p>My friend is working at a pizza shop. He takes cigarette breaks in an area that is covered by the public webcam of our town.</p>
  <p>I now want to train a convolutional neural network to be able to detect when he is smoking.</p>
  <p>Can somebody direct me in the right direction, which tools/tutorials I should look at for this classification task? I already saved 18 hours worth of pictures, one a minute. He is in 28 of these images, I will probably save a few more, maybe 2-3 days. But I don't really know how to start this.</p>
  
Tags: <convolutional-neural-networks><classification><computer-vision><image-recognition><object-recognition>
Title: How can I train a CNN to detect when a person is smoking outside of shop given images from a video camera?
UserDisplayName: Howard
ThreadText: # How can I train a CNN to detect when a person is smoking outside of shop given images from a video camera?
  
  (Asked by: username_0 on 2020-10-11)
  
  My friend is working at a pizza shop. He takes cigarette breaks in an area that is covered by the public webcam of our town.
  
  I now want to train a convolutional neural network to be able to detect when he is smoking.
  
  Can somebody direct me in the right direction, which tools/tutorials I should look at for this classification task? I already saved 18 hours worth of pictures, one a minute. He is in 28 of these images, I will probably save a few more, maybe 2-3 days. But I don't really know how to start this.
  
  **Tags:** convolutional-neural-networks, classification, computer-vision, image-recognition, object-recognition
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2020-10-12. Score: 1
  
  Since this a classification problem you will use a CNN preferably. Then you need to fix an architecture of the CNN like VGGNet or Resnet or Le-net. You can find details on architectures here- [Neural Network Architecures](https://towardsdatascience.com/neural-network-architectures-156e5bad51ba). As a beginner you can use VGG 16. You can read about the architecure here- [Medium.com blog on VGG 16](https://medium.com/towards-artificial-intelligence/the-architecture-and-implementation-of-vgg-16-b050e5a5920b).
  
  > which tools/tutorials i should look at for this classification task?
  
  Tools that you can use:
  
  1. A python IDE like PyCharm or Jupyter Notebook
  2. Keras and Tensorflow packages
  
  Since, deep learning requires lot of training dataset and demands huge computation power, you can opt for cloud computing platforms like Google Colab or Azure to run your code on, unless you have enough GPU power on your local machine. The above tools are if you want to code yourself. If you want to use GUI(and not write code) Azure Machine Learning Studio is a starting point. Matlab Deep Learning toolbox also provides an excellent GUI with pre trained models on above architectures. However, if you write code on Matlab then you have to ensure your target GPU is NVIDIA as Matlab(Parallel Processing Toolbox, which supports doing computations on GPU) supports CUDA only. It won't work with AMD GPU.
  
  If you want to opt to write code, you can find a step by step implementation on dogs vs cats classification here- [Dogs vs Cats classification](https://towardsdatascience.com/step-by-step-vgg16-implementation-in-keras-for-beginners-a833c686ae6c).
  
  > **Comments:**
  > **username_2**: @username_0 welcome to AI SE; if the answer resolved your issue, kindly accept it - see [What should I do when someone answers my question?](https://ai.stackexchange.com/help/someone-answers)  
  > **username_0**: i think it's not fully answered yet, i don't know how to classify the existing pictures as "the person is inside it". I will post my solution when it's done.  
  > **username_1**: @username_0 for simple classification you have to label the images with person inside it as 1 and the images where person is not inside it as 0 amd feed it into a CNN with some architecture as mentioned above. The learnable filters will automatically do the job of extracting features that will decide the classification output. This is a basic classification problem based approach. If you are talking about "finding the location of the person" that comes under segmentation and it would require different techniques.  
  
  ---
  
  