Python Forum
could not fix unexpected indent
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
could not fix unexpected indent
#1
Hello there,
I'm using Spyder anaconda program to have hand web browser. but unfortunately I got "IndentationError: unexpected indent" and I couldn't fix it

    import cv2
    import numpy as np
    import math
    import webbrowser as wb
    import os




    fingers2="facebook"


    fingers3="youtube"


    fingers4="twitter"
    cap = cv2.VideoCapture(0)

    while(1):

    try:  #an error comes if it does not find anything in window as it cannot find contour of max area
      #therefore this try error statement

    ret, frame = cap.read()
    frame=cv2.flip(frame,1)
    kernel = np.ones((3,3),np.uint8)

    #define region of interest
    roi=frame[100:300, 100:300]


    cv2.rectangle(frame,(100,100),(300,300),(0,255,0),0)
    hsv = cv2.cvtColor(roi, cv2.COLOR_BGR2HSV)



    # define range of skin color in HSV
    lower_skin = np.array([0,20,70], dtype=np.uint8)
    upper_skin = np.array([20,255,255], dtype=np.uint8)

     #extract skin colur imagw
    mask = cv2.inRange(hsv, lower_skin, upper_skin)



    #extrapolate the hand to fill dark spots within
    mask = cv2.dilate(mask,kernel,iterations = 4)

    #blur the image
    mask = cv2.GaussianBlur(mask,(5,5),100)



    #find contours
    _,contours,hierarchy= cv2.findContours(mask,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)

       #find contour of max area(hand)
    cnt = max(contours, key = lambda x: cv2.contourArea(x))

    #approx the contour a little
    epsilon = 0.0005*cv2.arcLength(cnt,True)
    approx= cv2.approxPolyDP(cnt,epsilon,True)


    #make convex hull around hand
    hull = cv2.convexHull(cnt)

     #define area of hull and area of hand
    areahull = cv2.contourArea(hull)
    areacnt = cv2.contourArea(cnt)

    #find the percentage of area not covered by hand in convex hull
    arearatio=((areahull-areacnt)/areacnt)*100

     #find the defects in convex hull with respect to hand
    hull = cv2.convexHull(approx, returnPoints=False)
    defects = cv2.convexityDefects(approx, hull)

    # l = no. of defects
    l=0

    #code for finding no. of defects due to fingers
    for i in range(defects.shape[0]):
    s,e,f,d = defects[i,0]
    start = tuple(approx[s][0])
    end = tuple(approx[e][0])
    far = tuple(approx[f][0])
    pt= (100,180)


    # find length of all sides of triangle
    a = math.sqrt((end[0] - start[0])**2 + (end[1] - start[1])**2)
    b = math.sqrt((far[0] - start[0])**2 + (far[1] - start[1])**2)
    c = math.sqrt((end[0] - far[0])**2 + (end[1] - far[1])**2)
    s = (a+b+c)/2
    ar = math.sqrt(s*(s-a)*(s-b)*(s-c))

    #distance between point and convex hull
    d=(2*ar)/a

    # apply cosine rule here
    angle = math.acos((b**2 + c**2 - a**2)/(2*b*c)) * 57


    # ignore angles > 90 and ignore points very close to convex hull(they generally come due to noise)
    if angle <= 90 and d>30:
    l += 1
    cv2.circle(roi, far, 3, [255,0,0], -1)

    #draw lines around hand
    cv2.line(roi,start, end, [0,255,0], 2)


    #print corresponding gestures which are in their ranges

    # define actions required


    l+=1

    #print corresponding gestures which are in their ranges
    font = cv2.FONT_HERSHEY_SIMPLEX



    if 1==1:

    if areacnt<2000:
      cv2.putText(frame,'Put hand in the box',(0,50), font, 2, (0,0,255), 3, cv2.LINE_AA)

    wb.open_new_tab('http://www.'+fingers2+'.com')
    tabs=tabs+1
    cv2.putText(img,"2."+fingers2, (50, 100), cv2.FONT_HERSHEY_SIMPLEX, 3, (255,0,0), 3)
    count=2
      elif arearatio<17.5:
      wb.open_new_tab('http://www.'+fingers3+'.com')
    tabs=tabs+1
    cv2.putText(img, "3."+fingers3, (50, 100), cv2.FONT_HERSHEY_SIMPLEX, 3, (0,0,255), 3)
    count=3
    elif count_defects == 3 and count!=4 and tabs<=15:
    wb.open_new_tab('http://www.'+fingers4+'.com')
    cv2.putText(img, "4."+fingers4, (50, 100), cv2.FONT_HERSHEY_SIMPLEX, 3, (255,165,0), 3)
    tabs=tabs+1
    count=4
    elif count_defects == 4 and count!=5:
    cv2.putText(img,"5.Close Web browser", (50, 50), cv2.FONT_HERSHEY_SIMPLEX, 3, 3)
    os.system("taskkill /im chrome.exe /f")
    tabs=0
    count=5
    else:
    cv2.putText(img,"", (50, 100),\
    cv2.FONT_HERSHEY_SIMPLEX, 3, 3)


    if count==2:
    cv2.putText(img, "2."+fingers2, (50, 100), cv2.FONT_HERSHEY_SIMPLEX, 3, (255,0,0), 3)
    elif count==3:
    cv2.putText(img, "3."+fingers3, (50, 100), cv2.FONT_HERSHEY_SIMPLEX, 3, (0,0,255), 3)
    elif count==4:
    cv2.putText(img, "4."+fingers4, (50, 100), cv2.FONT_HERSHEY_SIMPLEX, 3, (255,165,0), 3)
    elif count==5:
    cv2.putText(img, "5.WebBrowser close", (50, 100), cv2.FONT_HERSHEY_SIMPLEX, 3, 3)

     cv2.imshow('mask',mask)
    cv2.imshow('frame',frame)
    except:
    pass


    k = cv2.waitKey(5) & 0xFF
    if k == 27:
    break

    cv2.destroyAllWindows()
    cap.release()
This is the code, maybe I had other things are not correct! No idea

many thanks
Reply
#2
I don't think your indentation came through correctly, since there is almost no indentation in the code you posted. My suggestion would be to save the code to github, so we can see the file as it is saved, not how it is copy and pasted. And even more important, give us the full text of the error message, so we can see what line the problem is on.
Craig "Ichabod" O'Brien - xenomind.com
I wish you happiness.
Recommended Tutorials: BBCode, functions, classes, text adventures
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  getting unexpected indent errors trying to move cells up jensengt 4 866 Jun-28-2023, 12:05 PM
Last Post: deanhystad
  xml indent SubElements (wrapping) with multiple strings ctrldan 2 1,458 Jun-09-2023, 08:42 PM
Last Post: ctrldan
  IndentationError: unexpected indent dee 3 2,307 May-02-2022, 02:15 AM
Last Post: dee
  Avoid multiple repeat in indent Frankduc 8 2,867 Jan-18-2022, 05:46 PM
Last Post: Frankduc
  IndentationError: unexpected indent jk91 1 2,383 Feb-27-2020, 08:56 PM
Last Post: buran
  unable to indent json data dataplumber 4 3,000 Oct-22-2019, 01:55 PM
Last Post: dataplumber
  Python indent question iicveji 2 4,636 Oct-21-2017, 03:47 AM
Last Post: iicveji
  IndentationError: unexpected indent (Python) segs 8 17,255 Aug-11-2017, 03:13 PM
Last Post: segs

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020