diff --git a/webapp/dface.py b/webapp/dface.py index 7775c8a..d4c9e3d 100644 --- a/webapp/dface.py +++ b/webapp/dface.py @@ -27,4 +27,9 @@ def dface(path): else: print('someting error') - print(path) \ No newline at end of file + print(path) + +def gallery(path): + img = cv2.imread(path, 1) + cv2.imwrite(path, img) + diff --git a/webapp/forms.py b/webapp/forms.py index 2107c38..7d09bc9 100644 --- a/webapp/forms.py +++ b/webapp/forms.py @@ -1,12 +1,7 @@ from django import forms from .models import ImageUploadModel -class UploadImageForm(forms.Form): - title=forms.CharField(max_length=50) - #file = forms.FileField() - image=forms.ImageField() - class ImageUploadForm(forms.ModelForm): class Meta: model = ImageUploadModel - fields = ('description', 'document', ) + fields = ('title', 'description', 'document', ) diff --git a/webapp/models.py b/webapp/models.py index e83cb42..331eb2c 100644 --- a/webapp/models.py +++ b/webapp/models.py @@ -1,6 +1,7 @@ from django.db import models class ImageUploadModel(models.Model): + title = models.CharField(max_length=50, blank=True) description = models.CharField(max_length=255, blank=True) document = models.ImageField(upload_to='documents/') - uploaded_at = models.DateTimeField(auto_now_add=True) \ No newline at end of file + uploaded_at = models.DateTimeField(auto_now_add=True) diff --git a/webapp/templates/gallery.html b/webapp/templates/gallery.html new file mode 100644 index 0000000..32bd437 --- /dev/null +++ b/webapp/templates/gallery.html @@ -0,0 +1,19 @@ +{% extends 'base.html' %} +{% load webapp_tags %} + +{% block content %} + +
+ + {% if documents %} + + + + + {% endif %} + +

Return to home

+ +
+ +{% endblock %} diff --git a/webapp/templatetags/__init__.py b/webapp/templatetags/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/webapp/templatetags/__init__.py @@ -0,0 +1 @@ + diff --git a/webapp/templatetags/webapp_tags b/webapp/templatetags/webapp_tags new file mode 100644 index 0000000..619492a --- /dev/null +++ b/webapp/templatetags/webapp_tags @@ -0,0 +1,11 @@ +from django import template + +register = template.Library() + +@register.filter(name='split') +def split(str, key): + return str.split(key) + +@register.filter +def get_by_index(a, i): + return a[i] diff --git a/webapp/urls.py b/webapp/urls.py index 8e19844..999ed05 100644 --- a/webapp/urls.py +++ b/webapp/urls.py @@ -7,8 +7,8 @@ urlpatterns = [ url('^$', views.home, name='home'), url('detection/', views.detection, name='detection'), - url('upload/', views.upload, name='upload'), + url('gallery/', views.gallery, name='gallery'), url('about/', views.about, name='about'), ] -urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) \ No newline at end of file +urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) diff --git a/webapp/views.py b/webapp/views.py index 3e65ee8..cb98b93 100644 --- a/webapp/views.py +++ b/webapp/views.py @@ -1,39 +1,39 @@ -from django.shortcuts import render, redirect -from django.conf import settings -from django.core.files.storage import FileSystemStorage -from .forms import UploadImageForm -from .forms import ImageUploadForm -from .dface import dface - -def home(request): - return render(request, 'home.html') - -def about(request): - return render(request, 'about.html') - -def upload(request): - form = UploadImageForm(request.POST, request.FILES) - if form.is_valid(): - myfile = request.FILES['image'] - fs = FileSystemStorage() - filename = fs.save(myfile.name, myfile) - uploaded_file_url = fs.url(filename) - return render(request, 'upload.html', {'form': form, 'uploaded_file_url': uploaded_file_url}) - else: - form = UploadImageForm() - return render(request, 'upload.html', {'form': form}) - -def detection(request): - form = ImageUploadForm(request.POST, request.FILES) - if request.method == 'POST': - if form.is_valid(): - post = form.save(commit=False) - post.save() - - imageURL = settings.MEDIA_URL + form.instance.document.name - dface(settings.MEDIA_ROOT_URL + imageURL) - - return render(request, 'detection.html', {'form':form, 'post':post}) - else: - form = ImageUploadForm() - return render(request, 'detection.html',{'form':form}) \ No newline at end of file +import os +from django.shortcuts import render, redirect +from django.conf import settings +from django.core.files.storage import FileSystemStorage +from .forms import ImageUploadForm +#from .forms import GalleryForm +from .dface import dface +#from .dface import gallery +from cv2 import cv2 + +def home(request): + return render(request, 'home.html') + +def about(request): + return render(request, 'about.html') + +def detection(request): + form = ImageUploadForm(request.POST, request.FILES) + if request.method == 'POST': + if form.is_valid(): + post = form.save(commit=False) + post.save() + + imageURL = settings.MEDIA_URL + form.instance.document.name + dface(settings.MEDIA_ROOT_URL + imageURL) + + return render(request, 'detection.html', {'form':form, 'post':post}) + else: + form = ImageUploadForm() + return render(request, 'detection.html',{'form':form}) + +def gallery(request): + imageURL = settings.MEDIA_ROOT_URL + settings.MEDIA_URL + 'documents/' + img_list = os.listdir(imageURL) + for file in img_list: + + img = cv2.imread(imageURL+file, 1) + # cv2.imwrite(imageURL+file, img) + return render(request, "gallery.html", {'documents': img_list}) \ No newline at end of file