BUG: numpy.char funcs error with string array citing non-string array.
- [x] I have checked that this issue has not already been reported - **_briefly_**

- [ ] I have confirmed this bug exists on the latest version of pandas.

- [x] (optional) I have confirmed this bug exists on the master branch of pandas.

---

```python

s = Series(["a", "b"])
np.char.find(s, "b")
# or np.capitalize(s)

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-9-a924fee0248d> in <module>
----> 1 np.char.capitalize(s)

<__array_function__ internals> in capitalize(*args, **kwargs)

~/envPandas38/lib/python3.8/site-packages/numpy/core/defchararray.py in capitalize(a)
    414     """
    415     a_arr = numpy.asarray(a)
--> 416     return _vec_string(a_arr, a_arr.dtype, 'capitalize')
    417 
    418 

TypeError: string operation on non-string array

```

#### Problem description

This fails even though `s` is composed of strings and even things like `s.str` `s.astype(str)`, `dtype=str` make no difference.

#### Expected Output

numpy string functions should work

<details>

pandas master as of 12 jun 21.
numpy 1.20.3

</details>
